function renderCommentType(a){switch(a){case"blog":return"Blog";case"podcast":return"Podcast";case"content":return"General Articles";case"repository":return"Repository";default:return"(Unknown)"}}function reqEmail(a){switch(a){case"1":return"Waiting for email authentication";case"2":return"Email confirmed";default:return"No email auth. required"}}function resetCustomFilters(a,b){var c=Ext.getCmp("commentsMainGrid").store.lastOptions.params;c.podcast_id=null;c.blog_id=null;hideBarItems(Ext.getCmp("com_tb2_id"));switch(b){case"repository":Ext.getCmp("com_repository_filter").reset();Ext.getCmp("com_repository_filter").store.load({params:{site_id:a}});break;case"content":Ext.getCmp("com_article_filter").reset();Ext.getCmp("com_article_filter").store.load({params:{site_id:a}});break;case"blog":Ext.getCmp("com_blog_filter").reset();Ext.getCmp("com_blog_filter").store.load({params:{site_id:a}});break;case"podcast":Ext.getCmp("com_podcast_filter").reset();Ext.getCmp("com_podcast_filter").store.load({params:{site_id:a}});break}}function getArticlesDropDown(b){var c=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:"/articles/getAll"}),baseParams:{isac:1,aco:"cms_commenting"},autoLoad:false,reader:new Ext.data.JsonReader({root:"results",totalProperty:"total",id:"id"},[{name:"id"},{name:"name"}]),remoteSort:true,listeners:{loadexception:{fn:function(){alert("Error loading articles!")}},load:{fn:function(e){Ext.getCmp("com_article_filter_text").show();a.show();var d=new sitesDataRecord({id:"0",name:"All Articles (Reset Filter)"});e.insert(0,d)}}}});var a=new Ext.form.ComboBox({id:"com_article_filter",typeAhead:false,forceSelection:true,editable:true,store:c,displayField:"name",valueField:"id",triggerAction:"all",emptyText:"Select article",width:170,hidden:true,mode:"local",listeners:{select:{fn:function(d){var e=b.lastOptions.params;e.item_id=d.value;b.load({params:e})}}}});return a}function getRepositoriesDropDown(b){var c=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:"/repositories/getAll?all=1"}),baseParams:{isac:1,aco:"cms_commenting"},autoLoad:false,reader:new Ext.data.JsonReader({root:"results",totalProperty:"total",id:"id"},[{name:"id"},{name:"name"},{name:"iconCls"},{name:"parent_id"}]),remoteSort:true,listeners:{loadexception:{fn:function(){alert("Error loading repository items!")}},load:{fn:function(e){Ext.getCmp("com_repository_filter_text").show();a.show();if(!e.insertedNode){var d=new sitesDataRecord({id:"0",name:"All Repository Items (Reset Filter)"});e.insert(0,d);e.insertedNode=true}}}}});var a=new Ext.ux.TreeComboBox({id:"com_repository_filter",nodes:{textField:"name"},store:c,displayField:"name",valueField:"id",triggerAction:"all",width:210,hidden:true,mode:"local",listeners:{select:{fn:function(d){var e=b.lastOptions.params;e.item_id=d.value;b.load({params:e})}}}});return a}function getBlogsDropDown(b){var c=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:"/blogs/getBlogs"}),baseParams:{isac:1,aco:"cms_commenting"},autoLoad:false,reader:new Ext.data.JsonReader({root:"results",totalProperty:"total",id:"id"},[{name:"id"},{name:"name"}]),remoteSort:true,listeners:{loadexception:{fn:function(){alert("Error loading blogs!")}},load:{fn:function(e){Ext.getCmp("com_blog_filter_text").show();a.show();var d=new sitesDataRecord({id:"0",name:"All Blogs (Reset Filter)"});e.insert(0,d)}}}});var a=new Ext.form.ComboBox({id:"com_blog_filter",typeAhead:false,forceSelection:true,editable:true,store:c,displayField:"name",valueField:"id",triggerAction:"all",emptyText:"Select blog",width:170,hidden:true,mode:"local",listeners:{select:{fn:function(d){var e=b.lastOptions.params;e.blog_id=d.value;b.load({params:e});if(d.value>0){Ext.getCmp("com_blog_entries_filter").reset();Ext.getCmp("com_blog_entries_filter").store.load({params:{blog_id:d.value}})}else{Ext.getCmp("com_blog_entries_filter").hide();Ext.getCmp("com_blog_entries_filter_text").hide()}}}}});return a}function getBlogEntriesDropDown(b){var c=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:"/blogs/getEntries"}),autoLoad:false,reader:new Ext.data.JsonReader({root:"results",totalProperty:"total",id:"id"},[{name:"id"},{name:"name"}]),remoteSort:true,listeners:{loadexception:{fn:function(){alert("Error loading blog articles!")}},load:{fn:function(e){Ext.getCmp("com_blog_entries_filter_text").show();a.show();var d=new sitesDataRecord({id:"0",name:"All Blog Articles (Reset Filter)"});e.insert(0,d)}}}});var a=new Ext.form.ComboBox({id:"com_blog_entries_filter",typeAhead:false,forceSelection:true,editable:true,store:c,displayField:"name",valueField:"id",triggerAction:"all",emptyText:"Select blog article",width:200,hidden:true,mode:"local",listeners:{select:{fn:function(d){var e=b.lastOptions.params;e.item_id=d.value;b.load({params:e})}}}});return a}function getPodcastsDropDown(b){var c=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:"/podcasts/getPodcasts"}),baseParams:{isac:1,aco:"cms_commenting"},autoLoad:false,reader:new Ext.data.JsonReader({root:"results",totalProperty:"total",id:"id"},[{name:"id"},{name:"name"}]),remoteSort:true,listeners:{loadexception:{fn:function(){alert("Error loading podcasts!")}},load:{fn:function(e){Ext.getCmp("com_podcast_filter_text").show();a.show();var d=new sitesDataRecord({id:"0",name:"All Podcasts (Reset Filter)"});e.insert(0,d)}}}});var a=new Ext.form.ComboBox({id:"com_podcast_filter",typeAhead:false,forceSelection:true,editable:true,store:c,displayField:"name",valueField:"id",triggerAction:"all",emptyText:"Select podcast",width:170,hidden:true,mode:"local",listeners:{select:{fn:function(d){var e=b.lastOptions.params;e.podcast_id=d.value;b.load({params:e});if(d.value>0){Ext.getCmp("com_podcast_episodes_filter").reset();Ext.getCmp("com_podcast_episodes_filter").store.load({params:{podcast_id:d.value}})}else{Ext.getCmp("com_podcast_episodes_filter").hide();Ext.getCmp("com_podcast_episodes_filter_text").hide()}}}}});return a}function getPodcastEpisodesDropDown(b){var c=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:"/podcasts/getEpisodes"}),autoLoad:false,reader:new Ext.data.JsonReader({root:"results",totalProperty:"total",id:"id"},[{name:"id"},{name:"name"}]),remoteSort:true,listeners:{loadexception:{fn:function(){alert("Error loading podcast episodes!")}},load:{fn:function(e){Ext.getCmp("com_podcast_episodes_filter_text").show();a.show();var d=new sitesDataRecord({id:"0",name:"All Podcast Episodes (Reset Filter)"});e.insert(0,d)}}}});var a=new Ext.form.ComboBox({id:"com_podcast_episodes_filter",typeAhead:false,forceSelection:true,editable:true,store:c,displayField:"name",valueField:"id",triggerAction:"all",emptyText:"Select podcast episodes",width:200,hidden:true,mode:"local",listeners:{select:{fn:function(d){var e=b.lastOptions.params;e.item_id=d.value;b.load({params:e})}}}});return a}function Comments(q,r,d,k,i){if(q){var c=false}else{var c=true;q=""}if(!r){r=0}if(!d){d=0}var o=false;var m=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:"/comments/getAll"}),baseParams:{aco:"cms_commenting"},reader:new Ext.data.JsonReader({root:"results",totalProperty:"total",id:"id"},[{name:"id"},{name:"type"},{name:"site_id"},{name:"display_name",mapping:"site_name"},{name:"item_id"},{name:"item_name"},{name:"user_id"},{name:"email"},{name:"website"},{name:"req_email_flag"},{name:"username"},{name:"author"},{name:"content"},{name:"date"},{name:"status"}]),remoteSort:true});m.setDefaultSort("id","DESC");m.load({params:{start:0,limit:myPageSize,type:q,item_id:r}});var h=new Ext.grid.RowExpander({tpl:new Ext.Template('<div style="padding:5px;"><b>Content:</b> {content}</div>')});var g=new Ext.grid.ColumnModel([h,{id:"id",header:"Identity",dataIndex:"id",width:50,hidden:true},{header:"Author",dataIndex:"author",width:130,sortable:true},{header:"Author Email",dataIndex:"email",width:130,sortable:true},{header:"Author Website",dataIndex:"website",width:170,sortable:true},{header:"Requires Email Authentication",dataIndex:"req_email_flag",width:150,renderer:reqEmail,sortable:true},{header:"Site",dataIndex:"display_name",width:110,sortable:false},{header:"Item Type",dataIndex:"type",width:100,hidden:((c)?false:true),renderer:renderCommentType,sortable:false},{header:"Item Name",dataIndex:"item_name",width:110,sortable:false},{header:"Status",dataIndex:"status",renderer:formatStatus,width:50,sortable:true},{header:"Date",dataIndex:"date",width:70,sortable:true}]);g.defaultSortable=true;var t=[{text:"Add",id:"commentAddButton",tooltip:"Add new comment",iconCls:"edit-add",hidden:((c)?true:false),handler:function(){b(a,0)}}," ",{text:"Delete",tooltip:"Remove the selected comments",iconCls:"edit-delete",handler:function(){Delete(a,"/comments/delete","comment");o=true}},"-",{text:"Change Status",iconCls:"publish",menu:[{text:"Publish selected comments",iconCls:"publish",handler:function(){o=true;ChangeStatus(a,1,"/comments/changeStatus","comment")}},{text:"Unpublish selected comments",iconCls:"unpublish",handler:function(){o=true;ChangeStatus(a,0,"/comments/changeStatus","comment")}}]},"-","Search: "," ",new Ext.app.SearchField({store:m,width:120,pageSize:myPageSize}),"-","Status: "," ",new Ext.form.ComboBox({name:"filterCommByStatus",store:statusStoreWithoutTestingFilter,displayField:"txt",valueField:"idx",triggerAction:"all",width:100,editable:false,mode:"local",emptyText:"Select status",listeners:{select:{fn:function(v,u){var w=a.store.lastOptions.params;if(v.value!="-1"){w.filter_status=v.value}else{w.filter_status=null}a.store.reload({params:w})}}}})];if(c){var e=getSitesStore();var s=new sitesDataRecord({id:"",display_name:"All Sites (Reset Filter)",parent_id:null});e.on("load",function(){e.insert(0,s)});e.load({params:{aco:"cms_commenting"}});var j=new Ext.form.ComboBox({name:"siteDropDownElement",typeAhead:false,editable:false,store:e,displayField:"display_name",valueField:"id",triggerAction:"all",emptyText:"Filter by site",width:150,mode:"local",listeners:{select:{fn:function(v,u){resetCustomFilters(v.value,p.getValue());var w=m.lastOptions.params;w.site_id=v.value;w.start=0;m.load({params:w})}}}});var l=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:"/comments/getTypes"}),autoLoad:true,reader:new Ext.data.JsonReader({root:"results",totalProperty:"total",id:"id"},[{name:"type"},{name:"type_disp"}]),remoteSort:true,listeners:{loadexception:{fn:function(){alert("Error loading comment types!")}}}});var n=new sitesDataRecord({type:"",type_disp:"All Types (Reset Filter)"});l.on("load",function(){l.insert(0,n)});var p=new Ext.form.ComboBox({name:"commentsTypeDropDownElement",typeAhead:false,editable:false,store:l,displayField:"type_disp",valueField:"type",triggerAction:"all",emptyText:"Select comment type",width:150,mode:"local",listeners:{select:{fn:function(u){resetCustomFilters(j.getValue(),u.value);var v=m.lastOptions.params;v.type=u.value;v.item_id=0;m.load({params:v})}}}});t.push("-");t.push("Site:");t.push(j);t.push("-");t.push("Comment Type");t.push(p)}var a=new Ext.grid.GridPanel({id:"commentsMainGrid",title:"",iconCls:"article",loadMask:{msg:"Loading..."},store:m,cm:g,trackMouseOver:true,selModel:new Ext.grid.RowSelectionModel({singleSelect:false}),enableColLock:false,plugins:h,viewConfig:{emptyText:"No records found!",forceFit:true},tbar:t,bbar:new Ext.PagingToolbar({pageSize:myPageSize,store:m,displayInfo:true,displayMsg:"Displaying items {0} - {1} of {2}",emptyMsg:"No items to display"})});if(c){a.on("render",function(){var u=new Ext.Toolbar({id:"com_tb2_id",height:25,renderTo:a.tbar,items:[{text:"Filter comments by selecting one of the options above."},{text:"Select Article:",hidden:true,id:"com_article_filter_text"},getArticlesDropDown(m),{text:"Select Blog:",hidden:true,id:"com_blog_filter_text"},getBlogsDropDown(m),{text:"Select Blog Article:",hidden:true,id:"com_blog_entries_filter_text"},getBlogEntriesDropDown(m),{text:"Select Podcast:",hidden:true,id:"com_podcast_filter_text"},getPodcastsDropDown(m),{text:"Select Podcast Episode:",hidden:true,id:"com_podcast_episodes_filter_text"},getPodcastEpisodesDropDown(m),{text:"Select Repository Item:",hidden:true,id:"com_repository_filter_text"},getRepositoriesDropDown(m)]})})}a.on("rowdblclick",function(v,x,w){var u=v.store.data.items[x].id;b(v,u)});if(i){var f=new Ext.Panel({title:"Comments",layout:"fit",items:a})}else{var f=new Ext.Window({id:"commentsWindowId",title:"Manage Comments",iconCls:"comment",width:750,height:500,minWidth:300,minHeight:250,layout:"fit",plain:true,modal:true,buttonAlign:"center",items:a,listeners:{close:{fn:function(){if(k&&o){k()}}}}})}var b=function(A,x){var u=new Ext.form.Hidden({name:"data[Comment][id]",dataIndex:"id"});var B=new Ext.form.Hidden({name:"data[Comment][type]",dataIndex:"type",value:q});var w=new Ext.form.Hidden({name:"data[Comment][site_id]",dataIndex:"site_id",value:d});var z=new Ext.form.HtmlEditor({fieldLabel:"Content",id:"commentContentId",name:"data[Comment][content]",dataIndex:"content",allowBlank:false,width:500,height:200});var C=new Ext.form.TextField({fieldLabel:"Email",name:"data[Comment][email]",dataIndex:"email",width:500});var D=new Ext.form.ComboBox({id:"pubStatusComment",name:"pubStatusComment",dataIndex:"status",value:"1",fieldLabel:"Status",store:statusStoreWithoutTesting,displayField:"txt",typeAhead:false,selectOnFocus:true,valueField:"idx",hiddenName:"data[Comment][status]",triggerAction:"all",anchor:"40%",editable:false,allowBlank:false,mode:"local"});var v=new Ext.form.FormPanel({id:"formPanelComment",title:"",iconCls:"comment-add",layout:"form",labelWidth:70,bodyStyle:"padding:10px;",autoScroll:true,url:"/comments/edit/"+r,reader:new Ext.data.JsonReader({root:"results"},["id","type","site_id","item_id","user_id","author","content","status","email","website","req_email_flag"]),items:[u,w,B,z,C,D]});v.form.on("actioncomplete",function(E,F){if(F.type=="load"){}});if(x&&x>0){v.form.load({url:"/comments/getOne/"+x,waitMsg:"Loading ...Please wait!"})}var y=new Ext.Window({id:"commentDetailsWindowId",title:((x&&x>0)?"Edit Comment":"Add New Comment"),iconCls:"site-edit",width:650,height:350,minWidth:300,minHeight:250,layout:"fit",plain:true,modal:true,buttonAlign:"center",items:v,buttons:[{text:"Save",iconCls:"edit-save",handler:function(){if(v.form.isValid()){v.form.submit({waitMsg:"Processing",params:{admin:1},failure:function(E,F){Ext.MessageBox.alert("Error Message",F.result.errorInfo)},success:function(E,F){A.store.load({params:A.store.lastOptions.params});y.close()}})}else{Ext.MessageBox.alert("Error(s) Encounterd","Please fix the errors noted.")}}},{text:"Cancel",iconCls:"edit-cancel",handler:function(){y.close()}}]});y.show()};return f};
