Ext.ns('SroAdminUtils');

SroAdminUtils.NWorkCheckboxSM = Ext.extend(Ext.grid.CheckboxSelectionModel, {
	checkOnly : true,
	rowExpander : null,
	constructor : function(){
		this.superclass().constructor.apply(this, arguments);
	},
	
	initComponent : function() {	
		var config = {
		};
			
		Ext.apply(this, Ext.apply(this.initialConfig, config));
		this.superclass().initComponent.apply(this, arguments);
	},
	
	renderer : function(v, p, record) {
		p.cellAttr = 'rowspan="2"';
	
		if(record.data.isWork){
			return this.superclass().renderer.call(this);
		}	
	}
});

SroAdminUtils.permitTypeStore = new Ext.data.SimpleStore({
    fields : ['typeId', 'name'],
    id : 0,
    data : [
        [-1, 'все'],
        [REQUESTS_FIRST, 'объекты 1ой категории'],
        [REQUESTS_SECOND, 'объекты 2-ой категории (ООТС)']
    ]
});

SroAdminUtils.createPermitTypeSwitchCombo = function(store){
    return new Ext.form.ComboBox({
	    name : 'switchmPermitType',
	    id : 'switchPermitTypeId',
	    mode : 'local',
	    width: 190,
	    style: 'font:11px arial,tahoma,helvetica,sans-serif;',
	    valueField : 'typeId',
	    displayField : 'name',
	    selectOnFocus : true,
	    triggerAction : 'all',
	    editable : false,
	    store : SroAdminUtils.permitTypeStore,
		listeners : {
			scope : this,
			select : function(combo, rec, index) {
				store.filterBy(function(record, id){
					if(rec.data.typeId==-1)return true;
					
					if(record.data.requestTypeId==rec.data.typeId)return true;
					
					return false;
				});
			}
		}
    });
};

var decisionKind = [
	[1, 'по решению Совета'],
	[2, 'по решению Общего Собрания'],
	[3, 'по решению члена']
];

SroAdminUtils.decisionKindStore = new Ext.data.SimpleStore({
    fields : ['id', 'name'],
    id : 0,
    data : decisionKind
});

SroAdminUtils.switchDecisionKindStore = new Ext.data.SimpleStore({
    fields : ['id', 'name'],
    id : 0,
    data : [
        [-1, 'все']
    ].concat(decisionKind) 
});

SroAdminUtils.createDecisionKindSwitchCombo = function(store){
    return new Ext.form.ComboBox({
	    name : 'switchDecisionKind',
	    id : 'switchDecisionKindId',
	    mode : 'local',
	    width: 180,
	    style: 'font:11px arial,tahoma,helvetica,sans-serif;',
	    valueField : 'id',
	    displayField : 'name',
	    selectOnFocus : true,
	    triggerAction : 'all',
	    editable : false,
	    store : SroAdminUtils.switchDecisionKindStore,
		listeners : {
			scope : this,
			select : function(combo, rec, index) {
				store.filterBy(function(record, id){
					if(rec.data.id==-1)return true;
					
					if(record.data.decisionKind==rec.data.id)return true;
					
					return false;
				});
			}
		}
    });
};
