Ext.namespace('Cascade.panel.lager');
Cascade.panel.lager.auswahl_rollenlager_direkt = function()
{
	var form,_gridTable,idx;
	var bBlock = false;
	
	var storeDZ_RL = new Ext.data.SimpleStore({
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeDZ_RL_SV = new Ext.data.SimpleStore({
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeZ_RL = new Ext.data.SimpleStore({
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeZ_RL_SV = new Ext.data.SimpleStore({
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeDK_RL = new Ext.data.SimpleStore({
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeDK_RL_SV = new Ext.data.SimpleStore({
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeTraegerArt = new Ext.data.SimpleStore({
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var storeTraegerGroesse = new Ext.data.SimpleStore({
		id		: 'id',
		fields	: ['id', 'text']
	});
	
	var _setNumberfieldEvent = function(field, newValue, oldValue){
		/*Ext.Ajax.request( {
			url 	: 'lager.sollwerte-rohrumschliessendesteil/setNumberfield',
			params  : {
				'numberfieldid'		: field.id,
				'numberfieldvalue' 	: newValue
			},
			success : function(response, options) {
				var message	= Ext.util.JSON.decode(response.responseText);
				if(message)
					_setGUI(message)
			}
		});*/	
	};
	
	var _onActionComplete = function(strform, action){ //Wenn benötigt erweitern
		Cascade.app.getNextPanel(form,action); //Next Dialog		
	}
	
	var _setRadioEvent = function(oClicked, bChecked){
		if(!bBlock && bChecked){
			Ext.Ajax.request( {
				url 	: 'lager.auswahl-rollenlager-direkt/setRadio',
				params  : {
					'radiogroup' : oClicked.name,
					'radiovalue' : oClicked.inputValue
				},
				success : function(response, options) {
					var message	= Ext.util.JSON.decode(response.responseText);
					if(message)
						Cascade.panel.lager.auswahl_rollenlager_direkt_setGuiValue("RADIO",oClicked.inputValue);
				}
			});	
		}
	}
	
	var _setCheckboxEvent = function(oClicked, bChecked){
		if(!bChecked)
			Ext.getCmp("LAGER_ROLLENLAGER_DIREKT_TRAEGER").disable();
		else
			Ext.getCmp("LAGER_ROLLENLAGER_DIREKT_TRAEGER").enable();
				
		if(!bBlock){
			Ext.Ajax.request( {
				url 	: 'lager.auswahl-rollenlager-direkt/setCheckBox',
				params  : {
					'value' : bChecked,
					'checkid' : oClicked.inputValue
				},
				success : function(response, options) {
					var message	= Ext.util.JSON.decode(response.responseText);
					if(message)
						Cascade.panel.lager.auswahl_rollenlager_direkt_setGuiValue("RADIO",oClicked.inputValue);
				}
			});	
		}
	}
	
	var _setComboBoxEvent = function(combo, record, idx){
		if(!bBlock){
			var buildComboBoxId = combo.id.replace("LAGER_ROLLENLAGER_DIREKT_","");
				buildComboBoxId = buildComboBoxId.replace("_COMBO","");
			var strComboBoxId 		= buildComboBoxId;
			var strSelectionValueId	= combo.getValue();
			Ext.Ajax.request( {
				url 	: 'lager.auswahl-rollenlager-direkt/setComboBox',
				params  : {
					'comboboxid'	: strComboBoxId,
					'comboboxvalue' : strSelectionValueId
				},
				success : function(response, options) {
					var message	= Ext.util.JSON.decode(response.responseText);
					if(message)
						Cascade.panel.lager.auswahl_rollenlager_direkt_setGuiValue("BUTTON",message);
				}
			});	
		}
	}
	
	var _setButtonEvent = function(){
		if(!bBlock){
			Ext.Ajax.request({   
			    url		: 'lager.auswahl-rollenlager-direkt/getButton',
				success	: function( response, options){
					var message	= Ext.util.JSON.decode(response.responseText);
					Cascade.panel.lager.auswahl_rollenlager_direkt_setGuiValue("BUTTON",message);
				}
			});	
		}
	}
	
	return {
		setBlockEvent : function(bBlockEvent){
			bBlock = bBlockEvent;
		},
		getStore : function(){
			return ({
				'storeDZ_RL' 			: storeDZ_RL,
				'storeDZ_RL_SV' 		: storeDZ_RL_SV,
				'storeZ_RL'				: storeZ_RL,
				'storeZ_RL_SV'			: storeZ_RL_SV,
				'storeDK_RL'			: storeDK_RL,
				'storeDK_RL_SV'			: storeDK_RL_SV,
				'storeTraegerArt'		: storeTraegerArt,
				'storeTraegerGroesse' 	: storeTraegerGroesse
			});			
		},
		init : function(idx){
			this.idx = idx;
			bBlock = true;
			if (!form) {				
				var _Traeger = new Ext.Panel({
					layout: 'form',
					border: false,
					items : [{
						xtype		: 'fieldset',
						title		: '$LAGER_TRAEGER_LABEL$',
						id			: 'LAGER_ROLLENLAGER_DIREKT_TRAEGER',
						width		: 230,
						height		: 155,	
						style		: 'margin-left: 5px ; padding: 5px',					
						items		: [{
							layout 		: 'form',
							border 		: false,
							labelWidth	: 95,
							items		: [{
								xtype			: 'combo',
								id				: 'LAGER_ROLLENLAGER_DIREKT_TRAEGERART_COMBO',
								fieldLabel		: '$IDC_PROFILART_RH_LABEL$',
								labelSeparator	: '',
								labelAlign		: 'left',
								hiddenName		:'LAGER_TRAEGER_ART_NAME',
								store			: storeTraegerArt,
								listWidth		: 140,
								listeners		: {
									'select': _setComboBoxEvent
								},
								valueField		: 'id',
								displayField	: 'text',
								typeAhead		: true,
								mode			: 'local',
								triggerAction	: 'all',
								selectOnFocus	: true,
								width			: 80,
								editable		: false
							}]
						},{
							layout 		: 'form',
							border 		: false,
							labelWidth	: 95,
							items		: [{
								xtype			: 'combo',
								id				: 'LAGER_ROLLENLAGER_DIREKT_TRAEGERTYP_COMBO',
								fieldLabel		: '$IDC_TRAEGERGROESSE_LABEL$',
								labelSeparator	: '',
								labelAlign		: 'left',
								hiddenName		:'LAGER_TRAEGER_GROESSE_NAME',
								store			: storeTraegerGroesse,
								listWidth		: 140,
								listeners		: {
									'select': _setComboBoxEvent
								},
								valueField		: 'id',
								displayField	: 'text',
								typeAhead		: true,
								mode			: 'local',
								triggerAction	: 'all',
								selectOnFocus	: true,
								width			: 80,
								editable		: false
							}]
						},{
							layout 	: 'table',
							border	: false,
							width	: 220,
							items	: [{
								layout 		: 'form',
								border 		: false,
								width		: 190,
								labelWidth	: 95,
								items		: [{
									xtype			: 'numberfield',
									fieldLabel		: '$IDC_TRAEGERHOEHE_LABEL$',
									id				: 'LAGER_ROLLEN_DIREKTWAHL_TRAEGER_HOEHE',
									labelSeparator	: '&nbsp;',
									width			: 80,
									listeners: {
										'change': _setNumberfieldEvent
									}
								}]
							},{
								xtype		: 'textfield',
								value		: 'mm',
								hideLabels	: true,
								readOnly	: true,
								width		: 30,
								cls			: 'textfield-transparent'
							}]
						},{
							layout 	: 'table',
							border	: false,
							width	: 220,
							items	: [{
								layout 		: 'form',
								border 		: false,
								width		: 190,
								labelWidth	: 95,
								items		: [{
									xtype			: 'numberfield',
									fieldLabel		: '$IDC_TRAEGERBREITE_LABEL$',
									id				: 'LAGER_ROLLEN_DIREKTWAHL_TRAEGER_BREITE',
									labelSeparator	: '&nbsp;',
									width			: 80,
									listeners: {
										'change': _setNumberfieldEvent
									}
								}]
							},{
								xtype		: 'textfield',
								value		: 'mm',
								hideLabels	: true,
								readOnly	: true,
								width		: 30,
								cls			: 'textfield-transparent'
							}]
						},{
							layout 	: 'table',
							border	: false,
							width	: 220,
							items	: [{
								layout 		: 'form',
								border 		: false,
								width		: 190,
								labelWidth	: 95,
								items		: [{
									xtype			: 'numberfield',
									fieldLabel		: '$FLANSCHDICKE$',
									id				: 'LAGER_ROLLEN_DIREKTWAHL_TRAEGER_FLANSCHDICKE',
									labelSeparator	: '&nbsp;',
									width			: 80,
									listeners: {
										'change': _setNumberfieldEvent
									}
								}]
							},{
								xtype		: 'textfield',
								value		: 'mm',
								hideLabels	: true,
								readOnly	: true,
								width		: 30,
								cls			: 'textfield-transparent'
							}]
						}]
					}]
				});
				
				form = new Ext.FormPanel({
					frame		: true,
					id			: 'lager.auswahl_rollenlager_direkt',
					title		: '$LAGER_AUSWAHL_ROLLENLAGER_DIREKT$',
					bodyStyle	: 'padding-left: 5px',
					listeners: {
						'actioncomplete': _onActionComplete
					},
					items: [{ //Zeile 1 - Standard
							layout		: 'column',
							border		: false,
							autoHeight	: true,					
							items: [{
								layout 		: 'form',
								hideLabels	: true,
								border		: false,
								width		: 220,								
								items: [{
		                            xtype		: 'radio',
		                            id			: 'LAGER_ROLLENLAGER_DIREKT_DZ_RL',
									inputValue	: 'DZ_RL',
									boxLabel	: '$LAGER_ROLLENLAGER_DIREKT_DZ_RL$',
									name		: 'LAGER_ROLLENLAGER_DIREKT_R',
									listeners	: {
		                                'check' : _setRadioEvent
		                            }
								}]
							},{
								layout 		: 'form',
								hideLabels	: true,
								border		: false,
								width		: 220,								
								items		: [{
									xtype		: 'radio',
		                            id			: 'LAGER_ROLLENLAGER_DIREKT_Z_RL',
									inputValue	: 'Z_RL',
									boxLabel	: '$LAGER_ROLLENLAGER_DIREKT_Z_RL$',
									name		: 'LAGER_ROLLENLAGER_DIREKT_R',
									listeners	: {
		                                'check' : _setRadioEvent
		                            }
								}]
							},{
								layout 		: 'form',
								hideLabels	: true,
								border		: false,
								width		: 220,								
								items		: [{
									xtype		: 'radio',
		                            id			: 'LAGER_ROLLENLAGER_DIREKT_DK_RL',
									inputValue	: 'DK_RL',
									boxLabel	: '$LAGER_ROLLENLAGER_DIREKT_DK_RL$',
									name		: 'LAGER_ROLLENLAGER_DIREKT_R',
									listeners	: {
		                                'check' : _setRadioEvent
		                            }
								}]
							}]
					},{ //ZEILE 2 TEXT - TYPEN
						layout		: 'column',
						border		: false,
						autoHeight	: true,					
						items: [{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items: [{
	                            xtype		: 'textfield',
								value		: '$IDC_TYPEN_LABEL$',
								hideLabels	: true,
								readOnly	: true,
								width		: 220,
								cls			: 'textfield-transparent'
							}]
						},{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items		: [{
								xtype		: 'textfield',
								value		: '$IDC_TYPEN_LABEL$',
								hideLabels	: true,
								readOnly	: true,
								width		: 220,
								cls			: 'textfield-transparent'
							}]
						},{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items		: [{
								xtype		: 'textfield',
								value		: '$IDC_TYPEN_LABEL$',
								hideLabels	: true,
								readOnly	: true,
								width		: 220,
								cls			: 'textfield-transparent'
							}]
						}]
					},{ //ZEILE 3 COMBOS
						layout		: 'column',
						border		: false,
						autoHeight	: true,					
						items: [{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items: [{
	                            xtype			: 'combo',
								id				: 'LAGER_ROLLENLAGER_DIREKT_DZ_RL_COMBO',
								labelSeparator	: '',
								labelAlign		: 'left',
								hiddenName		: 'LAGER_ROLLENLAGER_DIREKT_DZ_RL_COMBO_NAME',
								store			: storeDZ_RL,
								listWidth		: 190,
								listeners		: {
									'select': _setComboBoxEvent
								},
								valueField		: 'id',
								displayField	: 'text',
								typeAhead		: true,
								mode			: 'local',
								triggerAction	: 'all',
								selectOnFocus	: true,
								width			: 180,
								editable		: false
							}]
						},{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items		: [{
								xtype			: 'combo',
								id				: 'LAGER_ROLLENLAGER_DIREKT_Z_RL_COMBO',
								labelSeparator	: '',
								labelAlign		: 'left',
								hiddenName		: 'LAGER_ROLLENLAGER_DIREKT_Z_RL_COMBO_NAME',
								store			: storeZ_RL,
								//store			: storeZ_RL_SV,
								listWidth		: 190,
								listeners		: {
									'select': _setComboBoxEvent
								},
								valueField		: 'id',
								displayField	: 'text',
								typeAhead		: true,
								mode			: 'local',
								triggerAction	: 'all',
								selectOnFocus	: true,
								width			: 180,
								editable		: false
							}]
						},{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items		: [{
								xtype			: 'combo',
								id				: 'LAGER_ROLLENLAGER_DIREKT_DK_RL_COMBO',
								labelSeparator	: '',
								labelAlign		: 'left',
								hiddenName		: 'LAGER_ROLLENLAGER_DIREKT_DK_RL_COMBO_NAME',
								store			: storeDK_RL,
								listWidth		: 190,
								listeners		: {
									'select': _setComboBoxEvent
								},
								valueField		: 'id',
								displayField	: 'text',
								typeAhead		: true,
								mode			: 'local',
								triggerAction	: 'all',
								selectOnFocus	: true,
								width			: 180,
								editable		: false
							}]
						}]
					},{ //Zeile 4 - SV
							layout		: 'column',
							border		: false,
							autoHeight	: true,	
							style		: 'padding-top:10px',											
							items: [{
								layout 		: 'form',
								hideLabels	: true,
								border		: false,
								width		: 220,								
								items: [{
		                            xtype		: 'radio',
		                            id			: 'LAGER_ROLLENLAGER_DIREKT_DZ_RL_SV',
									inputValue	: 'DZ_RL_SV',
									boxLabel	: '$LAGER_ROLLENLAGER_DIREKT_DZ_RL_SV$',
									name		: 'LAGER_ROLLENLAGER_DIREKT_R',
									listeners	: {
		                                'check' : _setRadioEvent
		                            }
								}]
							},{
								layout 		: 'form',
								hideLabels	: true,
								border		: false,
								width		: 220,								
								items		: [{
									xtype		: 'radio',
		                            id			: 'LAGER_ROLLENLAGER_DIREKT_Z_RL_SV',
									inputValue	: 'Z_RL_SV',
									boxLabel	: '$LAGER_ROLLENLAGER_DIREKT_Z_RL_SV$',
									name		: 'LAGER_ROLLENLAGER_DIREKT_R',
									listeners	: {
		                                'check' : _setRadioEvent
		                            }
								}]
							},{
								layout 		: 'form',
								hideLabels	: true,
								border		: false,
								width		: 220,								
								items		: [{
									xtype		: 'radio',
		                            id			: 'LAGER_ROLLENLAGER_DIREKT_DK_RL_SV',
									inputValue	: 'DK_RL_SV',
									boxLabel	: '$LAGER_ROLLENLAGER_DIREKT_DK_RL_SV$',
									name		: 'LAGER_ROLLENLAGER_DIREKT_R',
									listeners	: {
		                                'check' : _setRadioEvent
		                            }
								}]
							}]
					},{ //ZEILE 5 TEXT - TYPEN
						layout		: 'column',
						border		: false,
						autoHeight	: true,					
						items: [{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items: [{
	                            xtype		: 'textfield',
								value		: '$IDC_TYPEN_LABEL$',
								hideLabels	: true,
								readOnly	: true,
								width		: 220,
								cls			: 'textfield-transparent'
							}]
						},{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items		: [{
								xtype		: 'textfield',
								value		: '$IDC_TYPEN_LABEL$',
								hideLabels	: true,
								readOnly	: true,
								width		: 220,
								cls			: 'textfield-transparent'
							}]
						},{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items		: [{
								xtype		: 'textfield',
								value		: '$IDC_TYPEN_LABEL$',
								hideLabels	: true,
								readOnly	: true,
								width		: 220,
								cls			: 'textfield-transparent'
							}]
						}]
					},{ //ZEILE 6 COMBOS
						layout		: 'column',
						border		: false,
						autoHeight	: true,					
						items: [{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items: [{
	                            xtype			: 'combo',
								id				: 'LAGER_ROLLENLAGER_DIREKT_DZ_RL_SV_COMBO',
								labelSeparator	: '',
								labelAlign		: 'left',
								hiddenName		: 'LAGER_ROLLENLAGER_DIREKT_DZ_RL_SV_COMBO_NAME',
								store			: storeDZ_RL_SV,
								listWidth		: 190,
								listeners		: {
									'select': _setComboBoxEvent
								},
								valueField		: 'id',
								displayField	: 'text',
								typeAhead		: true,
								mode			: 'local',
								triggerAction	: 'all',
								selectOnFocus	: true,
								width			: 180,
								editable		: false
							}]
						},{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items		: [{
								xtype			: 'combo',
								id				: 'LAGER_ROLLENLAGER_DIREKT_Z_RL_SV_COMBO',
								labelSeparator	: '',
								labelAlign		: 'left',
								hiddenName		: 'LAGER_ROLLENLAGER_DIREKT_Z_RL_SV_COMBO_NAME',
								store			: storeZ_RL_SV,
								//store			: storeZ_RL,
								listWidth		: 190,
								listeners		: {
									'select': _setComboBoxEvent
								},
								valueField		: 'id',
								displayField	: 'text',
								typeAhead		: true,
								mode			: 'local',
								triggerAction	: 'all',
								selectOnFocus	: true,
								width			: 180,
								editable		: false
							}]
						},{
							layout 		: 'form',
							hideLabels	: true,
							border		: false,
							width		: 220,								
							items		: [{
								xtype			: 'combo',
								id				: 'LAGER_ROLLENLAGER_DIREKT_DK_RL_SV_COMBO',
								labelSeparator	: '',
								labelAlign		: 'left',
								hiddenName		: 'LAGER_ROLLENLAGER_DIREKT_DK_RL_SV_COMBO_NAME',
								store			: storeDK_RL_SV,
								listWidth		: 190,
								listeners		: {
									'select': _setComboBoxEvent
								},
								valueField		: 'id',
								displayField	: 'text',
								typeAhead		: true,
								mode			: 'local',
								triggerAction	: 'all',
								selectOnFocus	: true,
								width			: 180,
								editable		: false
							}]
						}]
					},{//Zeile 7 - Klemmbar
						layout		:'column',
						border		: false,						
						labelStyle	: 'font-size:11px',
						items : [{
							layout		: 'form',
							hideLabels	: true,
							defaultType	: 'checkbox',
							items: [{
                                id			: 'LAGER_ROLLENLAGER_DIREKT_KLEMMBAR',
								inputValue	: 'KLEMMBAR',
								boxLabel	: '$IDC_KLEMMBAR_LABEL$',
								listeners	: {
	                                'check' : _setCheckboxEvent
	                            }
							}]
						}]
					},
					_Traeger]
				});
				
				var cp = Ext.getCmp('center-panel');
				cp.insert(idx, form);
				cp.doLayout();
			}
			
			form.getForm().reset();
			bBlock = false;			
			
			Ext.Ajax.request({   
			    url		: 'lager.auswahl-rollenlager-direkt/getInitalValues',
				success	: function( response, options){
					var message	= Ext.util.JSON.decode(response.responseText);
					Cascade.panel.lager.auswahl_rollenlager_direkt_setGuiValue("INITIAL",message);
				}
			});
		}
	}
}();