Ext.namespace('Cascade.panel.lager');
Cascade.panel.lager.auswahl_zubehoer_ptfe = function()
{
	var form,_gridTable,idx;
	var bBlock = false;
	
	var storeAzA = new Ext.data.SimpleStore({
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeG = new Ext.data.SimpleStore({ // Gleitelement
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeTaG = new Ext.data.SimpleStore({ // Temperatur am Gleitelement
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeA = new Ext.data.SimpleStore({ // Abmessungen
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var _onActionComplete = function(strform, action){ //Wenn benötigt erweitern
		Cascade.app.getNextPanel(form,action); //Next Dialog		
	}
	
	var _setComboBoxEvent = function(combo, record, idx){
		if(!bBlock){
			var buildComboBoxId = combo.id.replace("LAGER_AUSWAHL_ZUBEHOER_PTFE_","");
				buildComboBoxId = buildComboBoxId.replace("_COMBO","");
			var strComboBoxId 		= buildComboBoxId;
			var strSelectionValueId	= combo.getValue();
			Ext.Ajax.request( {
				url 	: 'lager.auswahl-zubehoer-ptfe/setComboBox',
				params  : {
					'comboboxid'	: strComboBoxId,
					'comboboxvalue' : strSelectionValueId
				},
				success : function(response, options) {
					var message	= Ext.util.JSON.decode(response.responseText);
					if(message)
						Cascade.panel.lager.auswahl_zubehoer_ptfe_setGuiValue("COMBOBOX",message);
				}
			});	
		}
	};
	
	var _setCheckBoxEvent = function(strCheckboxId,bExpand){
		if(!bBlock){
			Ext.Ajax.request( {
				url 	: 'lager.auswahl-zubehoer-ptfe/setCheckBox',
				params  : {
					'checkboxid'	: strCheckboxId,
					'checkboxvalue' : bExpand
				},
				success : function(response, options) {
					var message	= Ext.util.JSON.decode(response.responseText);
					if(message){
						Cascade.panel.lager.auswahl_zubehoer_ptfe_setGuiValue("CHECKBOX",message);
						Cascade.panel.lager.auswahl_zubehoer_ptfe_setGuiValue("FIELDSET_CHECKBOX",bExpand);
					}
				}
			});	
		}
	};
	
	
	return {
		setBlockEvent : function(bBlockEvent){
			bBlock = bBlockEvent;
		},
		getStore : function(){
			return ({
				'storeAzA' 	: storeAzA,
				'storeG'	: storeG,
				'storeTaG'	: storeTaG,
				'storeA'	: storeA
			});			
		},
		init: function(idx){
			this.idx = idx;
			bBlock = true;
			if (!form) {
				form = new Ext.FormPanel({
					frame		: true,
					id			: 'lager.auswahl_zubehoer_ptfe',
					title		: '$LAGER_AUSWAHL_ZUBEHOER_PTFE$',
					bodyStyle	: 'padding-left: 5px',
					listeners: {
						'actioncomplete': _onActionComplete
					},
					items: [{ //Abhebesicherung zum Anschweissen
						layout		:'column',
						border		: false,						
						labelStyle	: 'font-size:11px',
						items	:[{
							layout 		: 'form',
							border 		: false,
							autoWidth 	: true,
							items : [{ //FIELSET - CHECKBOX
								xtype			: 'fieldset',
								id				: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_AzA_CHECK',
								title			: '$LAGER_ABHEBESICHERUNG_ANSCHWEISSEN$',
								checkboxToggle	: true,
								checkboxName	: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_AzA_CHECK_NAME',
								animCollapse	: true,
								titleCollapse	: true,
								height			: 140,
								width			: 420,	
								style			: 'margin-top:10px',						
								listeners: {
									'expand': function(panel) {
										if(!bBlock)
											_setCheckBoxEvent('AzA',true);
									},								
									'collapse': function(panel) {
										if(!bBlock)
											_setCheckBoxEvent('AzA',false);
									}
								},
								items	: [{
									layout: 'form',
									border: false,
									labelWidth: 120,
									style: 'padding: 10px',
									items: [{
										xtype			: 'combo',
										id				: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_TYP',
										fieldLabel		: '$IDS_TYP$',
										labelSeparator	: '',
										labelAlign		: 'left',
										hiddenName		: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_TYP_NAME',
										store			: storeAzA,
										listWidth		: 150,
										listeners		: {
											'select': _setComboBoxEvent
										},
										valueField		: 'id',
										displayField	: 'text',
										typeAhead		: true,
										mode			: 'local',
										triggerAction	: 'all',
										selectOnFocus	: true,
										width			: 130,
										editable		: false
									}]
								}]
							},{	//Gleitelement mit PTFE
								xtype			: 'fieldset',
								id				: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_GmPTFE_CHECK',
								title			: '$LAGER_GLEITELEMENT_PTFE$ PTFE',
								checkboxToggle	: true,
								checkboxName	: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_GmPTFE_CHECK_NAME',
								animCollapse	: true,
								titleCollapse	: true,
								height			: 100,
								width			: 420,	
								style			: 'margin-top:10px',						
								listeners: {
									'expand': function(panel) {
										if(!bBlock)
											_setCheckBoxEvent('AzA',false);
									},								
									'collapse': function(panel) {
										if(!bBlock)
											_setCheckBoxEvent('AzA',true);
									}
								},
								items	: [{
									layout: 'form',
									border: false,
									width : 400,
									labelWidth: 200,
									items: [{
										xtype			: 'combo',
										id				: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_G',
										fieldLabel		: '$LAGER_GLEITELEMENT$',
										labelSeparator	: '',
										labelAlign		: 'left',
										hiddenName		: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_G_NAME',
										store			: storeG,
										listWidth		: 240,
										listeners		: {
											'select': _setComboBoxEvent
										},
										valueField		: 'id',
										displayField	: 'text',
										typeAhead		: true,
										mode			: 'local',
										triggerAction	: 'all',
										selectOnFocus	: true,
										width			: 180,
										editable		: false
									}]
								},{
									layout: 'form',
									border: false,
									width : 400,
									labelWidth: 200,
									items: [{
										xtype			: 'combo',
										id				: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_TaG',
										fieldLabel		: '$LAGER_TEMPERATUR_GLEITELEMENT$',
										labelSeparator	: '',
										labelAlign		: 'left',
										hiddenName		: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_TaG_NAME',
										store			: storeTaG,
										listWidth		: 240,
										listeners		: {
											'select': _setComboBoxEvent
										},
										valueField		: 'id',
										displayField	: 'text',
										typeAhead		: true,
										mode			: 'local',
										triggerAction	: 'all',
										selectOnFocus	: true,
										width			: 180,
										editable		: false
									}]
								},{
									layout: 'form',
									border: false,
									width : 400,
									labelWidth: 200,
									items: [{
										xtype			: 'combo',
										id				: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_A',
										fieldLabel		: '$LAGER_ABMESSUNG$',
										labelSeparator	: '',
										labelAlign		: 'left',
										hiddenName		: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_A_NAME',
										store			: storeA,
										listWidth		: 240,
										listeners		: {
											'select': _setComboBoxEvent
										},
										valueField		: 'id',
										displayField	: 'text',
										typeAhead		: true,
										mode			: 'local',
										triggerAction	: 'all',
										selectOnFocus	: true,
										width			: 180,
										editable		: false
									}]
								}]
							}]
						},{ //IMAGE
							xtype 	: 'panel',
							id		: 'LAGER_AUSWAHL_ZUBEHOER_PTFE_PICTURE',
							style	: 'margin-left: 5px;'
						}]						
					}]
				});
				
				var cp = Ext.getCmp('center-panel');
				cp.insert(idx, form);
				cp.doLayout();
			}
			
			form.getForm().reset();
			bBlock = false;
			
			
			Ext.Ajax.request({   
			    url		: 'lager.auswahl-zubehoer-ptfe/getInitalValues',
				success	: function( response, options){
					var message	= Ext.util.JSON.decode(response.responseText);
					Cascade.panel.lager.auswahl_zubehoer_ptfe_setGuiValue("INITIAL",message);
				}
			});	
		}
	}
}();