var scrs; // Literals a carregar
var cargados;
var w;
var rows;
var lesMevesMotos;
var motosStore;
var fields;
var firstGrid;
var m;
var comptador = 0;

function html_entity_decode(str) {
	  var ta=document.createElement("textarea");
	  ta.innerHTML=str.replace(/</g,"&lt;").replace(/>/g,"&gt;");
	  return ta.value;
	}


function afegeixMoto(){
	var marca = Ext.get('id_marca').getValue();
	
	if (marca == 0)
	{
		Ext.Msg.alert(lit_error_verifica,lit_users_must_select);
	}
	else
	{	
		if (Ext.get('model').getValue() == "" && marca!=1)
		{
			Ext.Msg.alert(lit_error_verifica,lit_error_model);
		}
		else if (Ext.get('any').getValue() == "" && marca!=1)
		{
			Ext.Msg.alert(lit_error_verifica,lit_error_any);
		}
		else if (Ext.get('cilindrada').getValue() == "" && marca!=1)
		{
			Ext.Msg.alert(lit_error_verifica,lit_error_cilindrada);
		}
		else
		{
			nrecs = lesMevesMotos.records.length;
			lesMevesMotos.records[nrecs] 				= new Object;
			lesMevesMotos.records[nrecs].nrec 			= comptador;
			lesMevesMotos.records[nrecs].id_marca  		= Ext.get('id_marca').getValue();
			lesMevesMotos.records[nrecs].marcamoto		= Ext.get('marcamoto').dom.value;
			lesMevesMotos.records[nrecs].model 			= Ext.get('model').dom.value;
			lesMevesMotos.records[nrecs].any 			= Ext.get('any').dom.value;
			lesMevesMotos.records[nrecs].colors 		= Ext.get('colors').dom.value;
			lesMevesMotos.records[nrecs].cilindrada 	= Ext.get('cilindrada').dom.value;
			motosStore.loadData(lesMevesMotos);
			comptador ++;
		}
	}
}

function pinta_pantalla_membres(){
	Ext.onReady(function(){	 
	// Grid Motos
	lesMevesMotos = {
				 	records : [ 
				 	/*  { nrec: 0, id_marca: '1' , marcamoto: 'Kawasaki', model: 'z1000',any: '2008', colors: 'blanca', cilindrada: '1000cc' },
				 		{ nrec: 1, id_marca: '2' , marcamoto: 'Kawasaki', model: 'gpz',any: '2008', colors: 'blanca', cilindrada: '1000cc' }
					*/
					]
				};
				fields = [
				   {name: 'nrec'},
				   {name: 'id_marca', mapping : 'id_marca'},
				   {name: 'marcamoto', mapping : 'marcamoto'},
				   {name: 'model', mapping : 'model'},
				   {name: 'any', mapping : 'any'},
				   {name: 'colors', mapping : 'colors'},
				   {name: 'cilindrada', mapping : 'cilindrada'}
				];
				
			    motosStore = new Ext.data.JsonStore({
		        	fields : fields,
					data   : lesMevesMotos,
					root   : 'records',
					autoLoad: true
		    	});
				
				var cols = [
					//{id: 'id_marca', header: "id_marca", width: 160, sortable: true, dataIndex: 'id_marca'},
					{header: "marcamoto", width: 90, sortable: true, dataIndex: 'marcamoto'},
					{header: "model", width: 70, sortable: true, dataIndex: 'model'},
					{header: "any", width: 50, sortable: true, dataIndex: 'any'},
					{header: "colors", width: 50, sortable: true, dataIndex: 'colors'},
					{header: "cilindrada", width: 70, sortable: true, dataIndex: 'cilindrada'}
				];

				sm = new Ext.grid.CheckboxSelectionModel();
				//var sm2 = new xg.CheckboxSelectionModel();
				firstGrid = new Ext.grid.GridPanel({
				        store            	: motosStore,
				        columns          	: cols,
				        stripeRows       	: true,
				        //autoExpandColumn 	: 'marcamoto',
				        width            	: 325,
						region           	: 'center',
				        title            	: 'Motos',
				        stateful: true,
				        stateId: 'firstGrid',
				        sm: new Ext.grid.RowSelectionModel({singleSelect:true}),
					    //sm: sm,
				        viewConfig: {
				            forceFit:true
				        },

				        // inline buttons
				        //buttons: [{text:'Save'},{text:'Cancel'}],
				        //buttonAlign:'center',

				        // inline toolbars
				        tbar:[{
				            text:lit_users_afegirmoto,
				            tooltip:lit_users_afegirmotobtn,
				            //iconCls:'add',
				            icon:'shared/icons/fam/add.gif',
					    	cls:'x-btn-text-icon',
					    	handler:afegeixMoto,
				        },'-',{
				            text:lit_users_eliminarmoto,
				            tooltip:lit_users_eliminarmotobtn,
				            //iconCls:'remove'
				            icon:'shared/icons/fam/delete.gif',
					    	cls:'x-btn-text-icon',
					    	handler:esborraMoto,
				        }]
				})
		// Fi Grid Motos
	
		var genres = new Ext.data.Store({
		    reader: new Ext.data.JsonReader({
		        fields: ['id_marca', 'marca'],
		        root: 'rows'
		    }),
		    proxy: new Ext.data.HttpProxy({
		        url: 'membres/marcamotos.php'
		    }),
		    autoLoad: true
		});
				
		var genprovincies = new Ext.data.Store({
		    reader: new Ext.data.JsonReader({
		        fields: ['id_provincia', 'provincia'],
		        root: 'rows'
		    }),
		    proxy: new Ext.data.HttpProxy({
		        url: 'membres/provincies.php'
		    }),
		    autoLoad: true
		});				

		var panelUsuaris = new Ext.FormPanel({
	        layout: 'fit',
	        width: 625,
	        height: 448,
	        border: false,
	        url: 'membres/form_usuaris.php',
	        items: [{
	            xtype: 'tabpanel', 
	            height: 450,
	            bodyStyle: 'padding:10px',
	            activeTab: 0,
	            enableTabScroll:true,
	            plain: true,
	            items: [
	            {
	            	// Dades Personals
		            xtype: 'panel',
	                title: lit_dad_person,
	                layout: 'form',
	                width: 300,
	                minWidth: 300,
	                autoScroll: true,
	                split: true,
	                items: [
	                	{
				            xtype: 'textfield',
				            fieldLabel: lit_users_nick,
				            name: 'nick',
				            allowBlank:false
			         	},{
				            xtype: 'textfield',
				            inputType: 'password',
				            fieldLabel: lit_users_password,
				            name: 'password',
				            allowBlank:false
						},{
				            xtype: 'textfield',
				            inputType: 'password',
				            fieldLabel: lit_users_repassword,
				            name: 'repassword',
				            allowBlank:false
			          	},{
				            xtype: 'textfield',
				            fieldLabel: lit_users_nom,
				            name: 'nom'
				      	},{
							xtype: 'textfield',
							fieldLabel: lit_users_email,
							name: 'email',
							allowBlank:false,
							vtype: 'email'        
				      	},{
			              	xtype: 'textfield',
			              	fieldLabel: lit_users_reemail,
			              	name: 'reemail',
			              	allowBlank:false,
			              	vtype: 'email'              
				      	},{
			              	xtype: 'textfield',
			              	fieldLabel: lit_users_telefon,
			              	name: 'telefon',
			              	maskRe : /[0-9]/  
			              	
				      	},{
			              	xtype: 'datefield',
			              	fieldLabel: lit_users_datanaixam,
			              	name: 'datanaixament',
			              	format: "d/m/Y",
			              	allowBlank:false              
				      	},{
			              	xtype: 'textfield',
			              	fieldLabel: lit_users_poblacio,
			              	name: 'poblacio',
			              	allowBlank:false,             
				      	},{
				      		   typeAhead: true,  
				      		   triggerAction: 'all',
				      	       editable 	: false, 
					           xtype: 'combo',
					           fieldLabel: lit_users_provincia,
					           name: 'provincia',
					           id: 'provincia',
					           mode: 'local',
					           store: genprovincies,
					           displayField : 'provincia',
					           valueField   : 'provincia',
					           hiddenName   : 'id_provincia',
					           valueField   : 'id_provincia',
					           allowBlank	: false, 
					           emptyText:lit_users_must_provincia  
					    }
				      	
					] // Fi items dades personals
				} // Fi Dades Personals
	            ,{	// Descripció
		            xtype: 'panel',
	                title: lit_users_descripcio,
	                layout: 'fit',
	                width: 300,
	                minWidth: 300,
	                autoScroll: true,
	                split: true,
	                items: [
								{
								    xtype: 'htmleditor',
								    //fieldLabel: lit_users_descripcio,
								    name: 'descripcio',
								    height:150,
								    anchor: '80%'
								}
							] // Fi items descripció
	            }// Fi descripció
				,{
					
					// Dades Motos
					xtype: 'panel',
					title: lit_users_moto,
					layout: 'border',
	                layoutConfig: {
	                    titleCollapse: false,
	                    animate: false,
	                    activeOnTop: false
	                },items: [{
                    	region: 'north',
                    	xtype:'panel',
                    	layout:'form',
		                width: 300,
		                height:170,
		                minWidth: 300,
	    	            autoScroll: true,
	        	        split: true    	
							,items: [{
					      		   typeAhead: true,  
					      		   triggerAction: 'all',
					      	       editable 	: false, 
						           xtype: 'combo',
						           fieldLabel: lit_users_marca_moto,
						           name: 'marcamoto',
						           id: 'marcamoto',
						           mode: 'local',
						           store: genres,
						           displayField:'marca',
						           valueField: 'marca',
						           hiddenName: 'id_marca',
						           valueField: 'id_marca',
						           allowBlank:false,
						           emptyText:lit_users_moto_sel  
						    }
							,{
						           xtype: 'textfield',
						           fieldLabel: lit_users_model,
						           name: 'model',
						           id: 'model',
						           //allowBlank:false
						         },{
						           xtype: 'textfield',
						           fieldLabel: lit_users_any,
						           name: 'any',
						           id: 'any',
						           allowBlank:true,
						           maskRe : /[0-9]/
						         },{
						           xtype: 'textfield',
						           fieldLabel: lit_users_colors,
						           name: 'colors',
						           id: 'colors'
							      },{
						           xtype: 'textfield',
						           fieldLabel: lit_users_cilindrada,
						           name: 'cilindrada',
						           id: 'cilindrada',
						           //allowBlank:false,
						           maskRe : /[0-9]/          
							      }
			      
					            ]  		    			
		    			
                	},{
	                    region: 'center',
                    	xtype:'panel',
                    	layout:'form',
		                width: 300,
		                minWidth: 300,
	    	            autoScroll: true,
	        	        split: false			      		    			
                	}
                	,{
                		region: 'south',
                    	xtype:'panel',
                    	layout:'border',
                    	height:190,
                    	autoScroll: true,
                    	split: true,
    					items    : [
    						firstGrid
    					]
                	}
                	 
                	]
				} // Fi Dades Motos
				
				,{ 
					// Configuració
					xtype:'panel',
					title: lit_user_config,
					layout: 'form',
	                width: 300,
	                minWidth: 300,
	                autoScroll: true,
	                split: true,					
					items: [
						{
							xtype: 'radiogroup',
				            itemCls: 'form-fons1',
							fieldLabel : lit_user_visible,
							columns:2,
							bodyStyle: 'padding-right:5px;',
							items:[
							       {boxLabel: lit_user_si_visible, name: 'perfil_public', inputValue: "si", checked: true},
							       {boxLabel: lit_user_no_visible, name: 'perfil_public', inputValue: "no"}
							]
						}					        
						,{
							xtype: 'radiogroup',
				            itemCls: 'form-fons2',
							fieldLabel : lit_user_rebre_email,
							columns:2,
							items:[
							       {boxLabel: lit_si, name: 'email_alta', inputValue: "si", checked: true},
							       {boxLabel: lit_no, name: 'email_alta', inputValue: "no"}
							       ]
						}					
					]  					
				} // Fi configuració					
				] // Fi items tab panel
				,buttons: [
				{
			    	text:lit_alta_boto,
					icon:'shared/icons/fam/user_add.gif',
					cls:'x-btn-text-icon',
   					handler:function(){
						lesmotos=serialize(lesMevesMotos);
   						panelUsuaris.getForm().submit({
	             			waitMsg : lit_user_guarda_dades,
	                        method:'POST', 
	            	        params: {
   								motos:lesmotos
	            			},
	                        waitTitle:'Connecting', 
    	         			failure: function (form, action) {
					            if(action.failureType == 'server'){
									obj = Ext.util.JSON.decode(action.response.responseText);  
									Ext.Msg.alert(lit_error_verifica, eval(obj.errors.errormsg));
					        	}else{
				             		Ext.Msg.alert('Oops!', lit_error_general);
				        		}
             				},  
             				//success: function (form, request) {
             				success: function () {
             					Ext.Msg.alert(lit_alta_fin1, lit_alta_fin2 + "<br/>" + lit_alta_fin3 );
             					winAlta.close();
							}
       				})
   					} // Fi handler function
			}, 
			{
   				text: lit_alta_boto2,
   				handler: function(){
      				panelUsuaris.getForm().reset();
   				}
			}] // Fi buttons
			}]	        
		});

	var open = Ext.get('altaMembres');  
	if (open == null){  
		winAlta = new Ext.Window({
			id:'altaMembres',
			width:670,
			height:500,
			title: lit_alta_users,
			renderTo:document.body,
			layout:'fit',
			//pageX:20,
			//pageY:20,
			shim:false,
	        animCollapse:false,
	        constrainHeader:true,
	        iconCls:'altamembre',
			items:[panelUsuaris]
		});
		winAlta.show();
	}else{
		Ext.Msg.alert(JLI_ERROR_Oops, JLI_ERROR_Finestra_oberta);
	}
}); // Fi Ext.OnReady
}

function esborraMoto(){
	selectedItem = firstGrid.getSelectionModel().getSelected(); 
    // Check if we have selected item
    if (selectedItem) {
        // Get selected item value
        attribute = selectedItem.get('nrec');
    	Ext.MessageBox.confirm('Vsss', lit_users_sure_eliminar + " " + lesMevesMotos.records[attribute].marcamoto + " " +lesMevesMotos.records[attribute].model, motoFora);	
    }
}

function motoFora(btn){
	if(btn == 'yes')
   	{
		attribute = selectedItem.get('nrec');
		lesMevesMotos.records.splice(attribute,1);
		motosStore.remove(selectedItem);
	}
}

function altaMembres(){	
		pinta_pantalla_membres();
}// fi usuaris()


function llistaMembres(){
	var open = Ext.get('llistatMembres'); 
	if (open == null){
		if (vgenerals.getLogat() == true){	
			winLlistat = new Ext.Window({
				id:'llistatMembres',
				title: lit_list_users,
				width:780,
				collapsible:true,
				height:480,
				constrainHeader:true,	
				autoLoad: 'membres/usuaristots.php'
			});
		}else{
			winLlistat = new Ext.Window({
				id:'llistatMembres',
				title: lit_list_users,
				width:780,
				collapsible:true,
				height:480,
				constrainHeader:true,	
				autoLoad: 'membres/usuaris.php'
			});						
		}
		winLlistat.show();
	}else{
		Ext.Msg.alert(JLI_ERROR_Oops, JLI_ERROR_Finestra_oberta);	
	}
};


