1 Ext.define('ForumBrowser.TopicGrid', {
3 extend: 'Ext.grid.Panel',
5 alias: 'widget.topicgrid',
7 initComponent: function(){
8 var store = Ext.create('Ext.data.Store', {
9 model: 'ForumBrowser.Topic',
18 url: 'http://sencha.com/forum/topics-browse-remote.php',
22 totalProperty: 'totalCount'
37 selModel: Ext.create('Ext.selection.RowModel', {
49 renderer: function(value, o, record) {
50 return Ext.String.format('<div class="topic"><b>{0}</b><span class="author">{1}</span></div>',
51 value, record.get('author'));
60 dataIndex: 'replycount',
65 dataIndex: 'lastpost',
67 renderer: function(value, o, rec){
68 return Ext.String.format('<span class="post-date">{0}</span><br/>by {1}', Ext.Date.format(value, 'M j, Y, g:i a'), rec.get('lastposter'));
74 cls: 'x-docked-noborder-top',
77 iconCls: 'icon-new-topic',
79 alert('Not implemented');
83 iconCls: 'icon-preview',
87 toggleHandler: this.onPreviewChange
90 iconCls: 'icon-summary',
94 toggleHandler: this.onSummaryChange
98 xtype: 'pagingtoolbar',
101 displayMsg: 'Displaying topics {0} - {1} of {2}',
102 emptyMsg: 'No topics to display'
108 onSelect: function(selModel, rec){
109 this.ownerCt.onSelect(rec);
112 loadForum: function(id){
113 var store = this.store;
114 store.getProxy().extraParams.forumId = id;
118 onPreviewChange: function(btn, pressed){
119 this.ownerCt.togglePreview(pressed);
122 onSummaryChange: function(btn, pressed){
123 this.getView().getPlugin('preview').toggleExpanded(pressed);