
Ext.ns('GeoPrisma.Test.PHPUnit');

GeoPrisma.Test.PHPUnit.Grid = Ext.extend(Ext.grid.GridPanel, {
    
    
    initComponent:function() {
        var store = new Ext.data.GroupingStore({
            url: 'php/service/test/phpunit.json.php',
            
            reader : new Ext.data.JsonReader({
                idProperty: "id",
                root: 'tests',
                fields: ['id','severity','message','test','classname']
            }),
            
            sortInfo:{field: 'classname', direction: "ASC"},
            groupField:'classname'

        });
        store.load();

        this.store = store;
       
        this.columns = [        
            {header: "Severity", width: 30, sortable: true, dataIndex: 'severity', renderer: this.renderSeverity, scope: this},           
            {header: "Test", width: 250, sortable: true, dataIndex: 'test'}, 
            {id: 'message', header: "Reason", width: 60, sortable: true, dataIndex: 'message'},         
            {header: "Classname", width: 250, sortable: true, dataIndex: 'classname', hidden : true}
        ];

        this.autoExpandColumn = 'message';

         
        this.view = new Ext.grid.GroupingView({
            groupTextTpl: '{text} ({[values.rs.length]} {[values.rs.length > 1 ? "Items" : "Item"]})'
        });
                 
        
        GeoPrisma.Test.PHPUnit.Grid.superclass.initComponent.call(this);
    },
    

    renderSeverity: function (value, p, record)
    {
        return String.format('<img src="./img/phpunit/{0}.gif" alt="{0}" class="icon16"/>', value);
    }
});

