// Busca Categoria da Marca
function buscaMarcasAjax(vmarca, vcategoria, vproduto){
	var dtOrigem = document.getElementById('borigem').value;
	if(dtOrigem != ''){
		Ext.get(document.body).mask('Carregando marcas...', 'x-mask-loading');
		$.ajax({
			type: "POST",
			url: "marcas/combomarcas",
			data: "idOrigem="+dtOrigem,
			success: function(retorno){
				if(retorno){
					dados = eval(retorno);			
					
					document.getElementById('bmarca').disabled = false;
					
					document.getElementById('bmarca').length = 0;
					document.getElementById('bmarca').options[0] = new Option("Marca", "");
					
					document.getElementById('bcategoria').length = 0;
					document.getElementById('bcategoria').options[0] = new Option("Categoria", "");
					document.getElementById('bcategoria').disabled = true;
					
					document.getElementById('bproduto').length = 0;
					document.getElementById('bproduto').options[0] = new Option("Produto", "");
					document.getElementById('bproduto').disabled = true;
			
					for(i=0; i<dados.length; i++){
						document.getElementById('bmarca').options[i+1] = new Option( dados[i].marc_nome, dados[i].marc_idMarca );
						if(vmarca == dados[i].marc_idMarca){							
							document.getElementById('bmarca').options[i+1].selected = true;
						}
					}
					Ext.get(document.body).unmask();
					if(vcategoria != '')	buscaCategoriasAjax(vcategoria, vproduto);
				}
			}
		});
	}
}

// Busca Categoria da Marca
function buscaCategoriasAjax(vcategoria, vproduto){
	var dtMarca = document.getElementById('bmarca').value;
	if(dtMarca != ''){
		Ext.get(document.body).mask('Carregando categorias...', 'x-mask-loading');
		$.ajax({
			type: "POST",
			url: "produtos/combocategorias",
			data: "idMarca="+dtMarca,
			success: function(retorno){
				if(retorno){
					dados = eval(retorno);		
					document.getElementById('bcategoria').disabled = false;	
					document.getElementById('bcategoria').length = 0;
					document.getElementById('bcategoria').options[0] = new Option("Categoria", "");
					
					document.getElementById('bproduto').length = 0;
					document.getElementById('bproduto').options[0] = new Option("Produto", "");
			
					for(i=0; i<dados.length; i++){
						document.getElementById('bcategoria').options[i+1] = new Option( dados[i].cat_nome, dados[i].cat_idCategoria );
						if(vcategoria == dados[i].cat_idCategoria){							
							document.getElementById('bcategoria').options[i+1].selected = true;
						}
					}
					Ext.get(document.body).unmask();
					if(vproduto != ''){
						document.getElementById('bcategoria').disabled = false;
						buscaProdutosAjax(vproduto);
					}
				}
			}
		});
	}
}

// Busca Produtos 
function buscaProdutosAjax(vproduto){
	
	var dtOrigem 	= document.getElementById('borigem').value;
	var dtMarca 	= document.getElementById('bmarca').value;
	var dtCategoria = document.getElementById('bcategoria').value;
	var erro = Array(0);
		
	if(dtOrigem == '')		erro.push();
	if(dtMarca == '') 		erro.push();
	if(dtCategoria == '') 	erro.push();
	
	if(!erro.length){
		Ext.get(document.body).mask('Carregando produtos...', 'x-mask-loading');
		$.ajax({
			type: "POST",
			url: "produtos/comboprodutos",
			data: "origem="+dtOrigem+"&idMarca="+dtMarca+"&idCategoria="+dtCategoria,
			success: function(retorno){
				if(retorno){
					dados = eval(retorno);		
					document.getElementById('bproduto').disabled = false;		
					document.getElementById('bproduto').length = 0;
					document.getElementById('bproduto').options[0] = new Option("Produto", "");
			
					for(i=0; i<dados.length; i++){
						document.getElementById('bproduto').options[i+1] = new Option( dados[i].tipo_nome, dados[i].tipo_idTipo );
						if(vproduto == dados[i].tipo_idTipo)
							document.getElementById('bproduto').options[i+1].selected = true;
					}
				}
				Ext.get(document.body).unmask();
			}
		});
		
	}else{
		alert("Preencha corretamento o(s) dado(s):\n\n"+erro.join('\n'));
	}
}

function buscaCEP(nomecampo, abrev, pos)
{
	var vcep = document.getElementById(nomecampo).value;
	if(vcep != '' && vcep.length == 9){
		Ext.get(document.body).mask('Consultando CEP...', 'x-mask-loading');
		Ext.Ajax.request({
			url: 'utils/buscaendereco',
			method: 'GET',
			params: {cep: vcep},
			callback: function(options, success, response) {
				var resp = Ext.util.JSON.decode(response.responseText);
				if (resp.erro_descricao == '') {
					document.getElementById(abrev+'endereco'+pos).value = resp.endereco;
					document.getElementById(abrev+'uf'+pos).value = resp.estado;
					document.getElementById(abrev+'cidade'+pos).value = resp.cidade;
					document.getElementById(abrev+'bairro'+pos).value = resp.bairro;
				} else {
					alert(resp.erro_descricao);
				}
				Ext.get(document.body).unmask();
			}
		});
	}else{
		alert("Preencha o CEP corretamente.");
	}
}

function mudaFormatoListagem(vtipo){
	Ext.get(document.body).mask('Mudando o formato...', 'x-mask-loading');
	Ext.Ajax.request({
		url: 'utils/mudaformato',
		method: 'GET',
		params: {tipo: vtipo},
		callback: function(options, success, response) {
			if(response){
				switch (vtipo) {
					case 'T': configProdTable(); break;
					case 'L': configProdList();  break;
				}	
			}
			Ext.get(document.body).unmask();		
		}
	});
}
	