Ext.override(Ext.form.BasicForm, {
	singleAction: true,
	
	_doAction: Ext.form.BasicForm.prototype.doAction,
	
	doAction : function(action, options) {
		if (this.activeAction) {
			return this;
		}
		
		if (typeof action == 'string') {
			action = new Ext.form.Action.ACTION_TYPES[action](this, options);
		}
		if (this.fireEvent('beforeaction', this, action) !== false) {
			this.beforeAction(action);
			action.run.defer(100, action);
			this.activeAction = action;
		}
		return this;
	}
});

