var gp = {
	tag:'',
	params:[],
	latOpcCount:0,
	latInSearch:false,
	init:function(){
		horizontal();
		MM_preloadImages('/pictures/layout/pb/botoes/bt_empresa_over.gif',
						 '/pictures/layout/pb/botoes/bt_produtos_over.gif',
						 '/pictures/botoes/bt_freios_over.gif',
						 '/pictures/botoes/bt_pastilhas_over.gif',
						 '/pictures/layout/pb/botoes/bt_amortecedores_over.gif',
						 '/pictures/botoes/bt_sachs_over.gif',
						 '/pictures/botoes/bt_movt_over.gif',
						 '/pictures/botoes/bt_dallar_over.gif',
						 '/pictures/layout/pb/botoes/bt_servicos_over.gif',
						 '/pictures/layout/pb/botoes/bt_marcas_over.gif',
						 '/pictures/layout/pb/botoes/bt_contato_over.gif');
		gp.onInitied();
	},
	onHashChange:function(){
		gp.params = [];
		gp.onInitied();
	},
	onInitied:function(){
		var tmp = {acao:2};
		switch(gp.params.length){
			case 1: //marca ou categoria
				tmp = {acao:2,tipo:1,param:gp.params[0]};
				break;
			case 2://marca/categoria
				tmp = {acao:2,tipo:2,marca:gp.params[0],categoria:gp.params[1]};
				break;
			default://marca/categoria/permalink ou marca/categoria/params
				if(gp.params.length >= 2){
					if(gp.params[2].indexOf('=') > 0){
						tmp = {acao:2,tipo:4,marca:gp.params[0],categoria:gp.params[1]};
						for(var i=2;i<gp.params.length;i++){
							tmp[gp.params[i].split('=')[0]] = gp.params[i].split('=')[1];
						}					
					}else{
						tmp = {acao:2,tipo:5,marca:gp.params[0],categoria:gp.params[1],permalink:gp.params[2]};
					}
				}else{
					tmp = {acao:2,tipo:5,marca:gp.params[0],categoria:gp.params[1],permalink:gp.params[2]};
				}
				break;
		}
		//alert(hf.json.string(tmp));
		gp.params = tmp;
		gp.onLoad();
	},
	onLoad:function(){
		switch(gp.tag){
			case 'produtos':
				gp.produtos.load();
				break;
			default:
				_addEvent('cat','onchange',"gp.latFabricante();");
				_addEvent('fab','onchange',"gp.latOpcionais();");
				
				var ccat = cmbc.create({target:_gel('cat'), cod:'categoria', waitMessage:true, onLoad:gp.latFabricante});
				ccat.load();
				break;
		}
		
		if(_gel('box_produtos') != null){
			_get('/lib/inc_geral.asp', {ctrl:this, type:'json', method:'post', params:'acao=6',onLoad:gp.destHome});
		}

	},
	destHome:function(a){
		var pic = new Image();
		pic.onload = function(){
			//width="215" height="85"
			$(this).height(85);
			$(this).appendTo($('#picHome'))
		}
		pic.onerror = function(){
			_get('/lib/inc_geral.asp', {ctrl:this, type:'json', method:'post', params:'acao=6',onLoad:gp.destHome});
		}
		
		var html = '<table width="100%" border="0" cellspacing="0" cellpadding="0">'+
		'  <tr><td colspan="2"><img src="/pictures/layout/pb/produtos_home.gif" width="215" height="38" /></td></tr>'+
		'  <tr><td colspan="2" id="picHome" align="center"></td></tr>'+
		'  <tr>'+
		'	<td width="195" align="left"><a href="/produtos/'+ a.req[0].fab +'/'+ a.req[0].cat +'/'+ a.req[0].permalink +'" class="destaqueVermelho" style="padding-left:20px;">'+ a.req[0].prod +'</a></td>'+
		'	<td width="15" align="right"><a href="/produtos/'+ a.req[0].fab +'/'+ a.req[0].cat +'/'+ a.req[0].permalink +'" class="destaqueVermelho" style="padding-right:10px;">+</a></td>'+
		'  </tr>'+
		'</table>';
		_inHTML('box_produtos',html);
		
		switch(parseInt(a.req[0].fab_cod)){
			case 2:
				pic.src = '/pictures/produtos/2/thumb.jpg';
				break;
			case 4:
				pic.src = '/pictures/produtos/4/'+ a.req[0].prod.replace('/','_') +'.jpg';
				break;
			default:
				pic.src = '/pictures/produtos/'+ a.req[0].fab_cod +'/'+ a.req[0].cod +'_f.jpg';
				break;
		}
		
	},	
	latFabricante:function(){

		if(!gp.latInSearch){
			if((gp.params.categoria == undefined) && (gp.params.cat != undefined)){
				gp.params.categoria = gp.params.cat;
			}
			if((gp.params.marca == undefined) && (gp.params.fab != undefined)){
				gp.params.marca = gp.params.fab;
			}
			
			var comp = unescape( ((gp.params.categoria == undefined) ? gp.params.param : gp.params.categoria) )  ;
			for(var i=0;i<_gel('cat').options.length;i++){
				if(hf.string.trim(_gel('cat').options[i].text) == hf.string.trim(comp)){
					_gel('cat').selectedIndex = i;
				}
			}
		}
		
		//carrego o submenu tambem
		html = '';
		for(var i=0;i<_gel('cat').options.length;i++){
			valor = _gel('cat').options[i].text;
			link = valor;
			if(valor.indexOf('\\') != -1){
				link = hf.string.trim(valor.split('\\')[1]);
				if(valor.indexOf('discos') != -1){
					valor = 'discos de freio ('+ valor.split('\\')[1] +')';
				}else{
					valor = valor.split('\\')[1];
				}
			}
			
			html += '<li><a href="/produtos/'+ link +'" onmouseover="MM_swapImage(\'Image2\',\'\',\'/pictures/layout/pb/botoes/bt_produtos_over.gif\',1)">'+ valor +'</a></li>';
		}
		_inHTML('submenu_produtos',html);
		
		var cfab = cmbc.create({target:_gel('fab'),cod:'fabricante', waitMessage:true, tipo:escape(_gel('cat').value),onLoad:gp.latOpcionais});
		cfab.load();
	},
	latOpcionais:function(){
		
		if(_gel('lat_pesq') != null){
			if(!gp.latInSearch && gp.params.marca != undefined){
				for(var i=0;i<_gel('fab').options.length;i++){
					if(_gel('fab').options[i].text.toLowerCase() == gp.params.marca.toLowerCase()){
						_gel('fab').selectedIndex = i;
					}
				}
			}
			
			_inHTML('lbl_marca',_gel('fab').options[_gel('fab').selectedIndex].text.toLowerCase());
			_gel('link_marca').href = '/'+ _gel('fab').options[_gel('fab').selectedIndex].text.toLowerCase() +'/';
			_gel('marca').style.display = 'block';
			
			if(_gel('fab').value.toLowerCase() == '3' && _gel('cat').value.toLowerCase() == 'pastilhas'){
				_gel('pecas_pagid').style.display = 'block';
			}else{
				_gel('pecas_pagid').style.display = 'none';
			}
			
			_get('/lib/inc_geral.asp', {ctrl:this, type:'json', method:'post', params:'acao=3&fab='+_gel('fab').value+'&cat='+escape(_gel('cat').value),
				 onLoad:function(a){
					if(a.req[0].erro == undefined){
						var t = _gel('tb_pesq_lat').tBodies[0], tr, td;
						
						for(var i=0;i<gp.latOpcCount;i++){
							tr = _gel('trL_pesq_lat_'+ i);
							t.removeChild(tr);
							tr = _gel('trI_pesq_lat_'+ i);
							t.removeChild(tr);								
						}
						gp.latOpcCount = 0;
						for(var i=0;i<a.req.length;i++){
							tr = _ce('TR');
							tr.id = 'trL_pesq_lat_'+ i;
								td = _ce('TD');
								td.innerHTML = a.req[i].opcional;
								tr.appendChild(td);
								t.appendChild(tr);
							
							args = {name:'op_'+ i,ix:i};
							
							tr = _ce('TR');
							tr.id = 'trI_pesq_lat_'+ i;
								td = _ce('TD');
									ck = _ce('INPUT');
										ck.type = 'checkbox';
										ck.id = 'op_ck_'+ i;
										ck.style.float = 'left';
										td.appendChild(ck);
									op = _ce('SELECT');
										op.className = 'form_pesquisa_lat';
										op.id = 'op_'+ i;
										op.style.width = '126px';
										op.style.float = 'right';
										op.name = 'op_'+ i +'_'+ a.req[i].ixo;
								td.appendChild(op);
							tr.appendChild(td);
							t.appendChild(tr);
							
							if(gp.params['op_0_'+ a.req[i].ixo] != undefined){
								args['value'] = gp.params['op_0_'+ a.req[i].ixo];
							}
							
							_get('/lib/inc_geral.asp', 
								 	{args:args, type:'json', method:'post', params:'acao=4&fab='+_gel('fab').value+'&cat='+escape(_gel('cat').value)+'&opc='+a.req[i].ixo, 
									onLoad:function(b){
										var o = _gel(b.args.name);
										var n = o.name;
										//TODO:ERROR
										var cop = cmbc.create({target:_gel(b.args.name)})
										for(var j=0;j<b.req.length;j++){
											cop.addOptionCombo(b.req[j].valor,b.req[j].valor);
										}
										if(gp.params[n] != undefined){
											o.value = gp.params[n];
										}else if(b.args.value != undefined){
											o.value = b.args.value;
										}else{
											_gel('op_ck_'+ b.args.ix).checked = false;
										}
									}});
							gp.latOpcCount++;
							_gel('op_ck_'+ i).checked = true;
						}
					}else{
						var t = _gel('tb_pesq_lat').tBodies[0], tr;
						for(var i=0;i<gp.latOpcCount;i++){
							tr = _gel('trL_pesq_lat_'+ i);
							t.removeChild(tr);
							tr = _gel('trI_pesq_lat_'+ i);
							t.removeChild(tr);								
						}
						gp.latOpcCount = 0;
					}
					gp.latInSearch = true;
					 
				}});
		}
			
	},
	homePost:function(){
		
		var tmp = {acao:2};
		tmp['marca'] = _gel('fab').options[_gel('fab').selectedIndex].text.toLowerCase();
		tmp['cat'] = _gel('cat').options[_gel('cat').selectedIndex].value.toLowerCase();

		var q = tmp['marca'] +'/'+ tmp['cat'], cod;
		
		location.href = '/produtos/' + q;
		
		return false;
	},
	latPost:function(){

		var tmp = {acao:2};
		tmp['tipo'] = 4;
		tmp['marca'] = _gel('fab').options[_gel('fab').selectedIndex].text;
		tmp['cat'] = _gel('cat').options[_gel('cat').selectedIndex].value;

		var q = tmp['marca'] +'/'+ tmp['cat'], cod;
		
		for(var i=0;i<gp.latOpcCount;i++){
			if(_gel('op_ck_'+ i).checked){
				tmp[_gel('op_'+ i).name] = _gel('op_'+ i).options[_gel('op_'+ i).selectedIndex].text;
				cod = _gel('op_'+ i).name.split('_');
				q += '/'+ _gel('op_'+ i).name +'='+ _gel('op_'+ i).options[_gel('op_'+ i).selectedIndex].text;
			}
		}
		
		
		gp.latInSearch = true;
		gp.params = tmp;
		//gp.produtos.load();
		
		location.href = '/produtos/' + q;
		
		return false;
		
	},
	contato:{
		enviar:function(){
			var valida = fvc.create({id:'contato',labelHighlight:true});
			valida.labelClassOK 	= '';
			valida.labelClassERROR 	= 'destaqueVermelho';
			valida.add({field:'acao',label:_gel('lbl_nome'),type:fvct.numeric,minSize:1});
			valida.add({field:'nome',label:_gel('lbl_nome'),type:fvct.notnull,minSize:4});
			valida.add({field:'ddd',label:_gel('lbl_telefone'),type:fvct.numeric});
			valida.add({field:'numero',label:_gel('lbl_telefone'),type:fvct.numeric,minSize:7});
			valida.add({field:'email',label:_gel('lbl_email'),type:fvct.email});
			valida.add({field:'mensagem',label:_gel('lbl_mensagem'),type:fvct.notnull,minSize:10});
			
			if(valida.valid()){
				_get('/lib/inc_geral.asp', {ctrl:this, type:'json', method:'post', params:valida.getParams(), onLoad:function(){alert('mensagem enviada com sucesso!')}});
			}else{
				alert('preencha corretamente os campos em vermelho');
			}
		}
	},
	representantes:{
		enviar:function(){
			var valida = fvc.create({id:'representantes',labelHighlight:true});
			valida.labelClassOK 	= '';
			valida.labelClassERROR 	= 'destaqueVermelho';
			valida.add({field:'acao',label:_gel('lbl_nome'),type:fvct.numeric,minSize:1});
			valida.add({field:'nome',label:_gel('lbl_nome'),type:fvct.notnull,minSize:4});
			valida.add({field:'ddd',label:_gel('lbl_telefone'),type:fvct.numeric});
			valida.add({field:'numero',label:_gel('lbl_telefone'),type:fvct.numeric,minSize:7});
			valida.add({field:'email',label:_gel('lbl_email'),type:fvct.email});
			valida.add({field:'cidade',label:_gel('lbl_cidade'),type:fvct.notnull,minSize:4});
			valida.add({field:'estado',label:_gel('lbl_cidade'),type:fvct.notnull,minSize:2});
			valida.add({field:'mensagem',label:_gel('lbl_mensagem'),type:fvct.notnull,minSize:10});
			
			if(valida.valid()){
				_get('/lib/inc_geral.asp', {ctrl:this, type:'json', method:'post', params:valida.getParams(), onLoad:function(){alert('mensagem enviada com sucesso!')}});
				alert(valida.getParams());
			}else{
				alert('preencha corretamente os campos em vermelho');
			}
		}
	},
	produtos:{
		rs:[],
		pics:[],
		singleLoaded:false,
		load:function(a){
			if(a){
				//alert(hf.json.string(a.req[0]));
				if(a.err.code > 0){
					alert(a.err.men);
				}else if(a.req[0].erro > 0){
					if(a.req[0].men == 'EOF/BOF'){
						_inHTML('list_produtos',gp.naoencontradoHTML);
					}else{
						alert(a.req[0].men);
					}
				}else{
					switch(gp.params.tipo){
						case 5://um produto
							var html = 	'<table width="90%" border="0" cellspacing="0" cellpadding="0">'+
										'<tr><td>';
										
							//topo
							pic = '<img src="/pictures/produtos/'+ a.req[0].ixf +'/'+ a.req[0].ixp +'_f.jpg" width="200" height="160" onerror="this.style.display = \'none\';">';
							switch(a.req[0].ixf){
								case 2:
									pic = '<img src="/pictures/produtos/2/thumb.jpg" width="200" height="160">';
									break;
								case 4:
									pic = '<a href="/pictures/produtos/4/'+ a.req[0].produto.replace('/','_') +'.jpg" rel="roadtrip"><img border="0" style="visibility:hidden;" src="/pictures/produtos/4/'+ a.req[0].produto.replace('/','_') +'.jpg" onload="_pic.resizeMaxDim(this,200,160);" onerror="this.style.display = \'none\';"></a>';
									break;
							}
							
							html +=	'<div style="float:left; margin-right:10px; width:200px;">'+ pic +'</div>'+
									'<div id="dest_produto">'+
									'<div id="tit_produto">'+ a.req[0].produto +'</div>';
							
							if(a.req[0].descricao.length > 0){
								html += '<div id="desc_produto">'+ a.req[0].descricao +'</div>';
							}
										
	
							for(var i=0;i<a.req.length;i++){
								if(a.req[i].destaque == 1){
									lbl_op = a.req[i].opcional;
									val_op = a.req[i].valor_opcional;
									gp.produtos.checkOpcional(lbl_op,val_op);
									html +=	'<br/><span class="menu_produtos_dest">'+ lbl_op +'</span> <span class="conteudo_dest">'+ val_op +'</span>';
									
									if(a.req[0].ixf == 2 && lbl_op.toUpperCase() == 'PART #'){ // somente para carrozzeria
										part_n = val_op;
									}
								}
							}
							
							html += '</div>';
							//fim do topo
	
							html +=	'</td></tr>'+
									'<tr><td>'+
									'  <div id="produto_marca">'+
									'	<div id="topo_produto_marca" style="margin:10px 0px 10px 0px;" class="conteudo_dest">Especificação</div>'+
									'	  <table width="100%" border="0" cellspacing="1" cellpadding="2">';
									
							//part_n = '';
									
							for(var i=0;i<a.req.length;i++){
								if(a.req[i].destaque == 0){
									lbl_op = a.req[i].opcional;
									val_op = a.req[i].valor_opcional;
									gp.produtos.checkOpcional(lbl_op,val_op);
									p_cod = a.req[i].ixp;
									lbl_op2 = '&nbsp;';
									val_op2 = '&nbsp;';
									i++;
									if(i < a.req.length){
										lbl_op2 = a.req[i].opcional;
										val_op2 = a.req[i].valor_opcional;
										gp.produtos.checkOpcional(lbl_op2,val_op2);
										if(a.req[0].ixf == 2 && lbl_op2.toUpperCase() == 'PART #'){ // somente para carrozzeria
											part_n = val_op2;
										}
										
									}
									
									html +=	'		<tr>'+
											'		  <td width="112" class="menu_produtos">'+ lbl_op +'</td>'+
											'		  <td width="112" class="conteudo">'+ val_op +'</td>'+
											'		  <td width="112" class="menu_produtos">'+ lbl_op2 +'</td>'+
											'		  <td width="112" class="conteudo">'+ val_op2 +'</td>'+
											'		</tr>';
											
								}
							}
							
							html +=	'	  </table>';
							switch(a.req[0].ixf){
								case 2:
									html += '<div id="carrozzeria_thumbs" class="menu_produtos_dest">'+
											'<div style="text-align:center;border-top:1px solid #AAAAAA">cores disponíveis<br><span class="conteudo">clique nas imagens para ampliar</span></div>'+
											'<div style="border-bottom:1px solid #AAAAAA;"><a href="/pictures/produtos/2/gd/black.jpg" rel="roadtrip" title="satin black"><img src="/pictures/produtos/2/thumbs/black.jpg" border="0"></a> <span style="color:#666666;">SATIN BLACK - </span>'+ part_n +'BK</div>'+
											'<div style="border-bottom:1px solid #AAAAAA;"><a href="/pictures/produtos/2/gd/blue.jpg" rel="roadtrip" title="sharp blue"><img src="/pictures/produtos/2/thumbs/blue.jpg" border="0"></a> <span style="color:#666666;">SHARP BLUE - </span>'+ part_n +'BL</div>'+
											'<div style="border-bottom:1px solid #AAAAAA;"><a href="/pictures/produtos/2/gd/gold.jpg" rel="roadtrip" title="bright gold"><img src="/pictures/produtos/2/thumbs/gold.jpg" border="0"></a> <span style="color:#666666;">BRIGHT GOLD - </span>'+ part_n +'GL</div>'+
											'<div style="border-bottom:1px solid #AAAAAA;"><img src="/pictures/produtos/2/thumbs/polish.jpg" border="0"> <span style="color:#666666;">BRILHANTE POLIDA A MÃO - </span>'+ part_n +'PL</div>'+
											'<div style="border-bottom:1px solid #AAAAAA;"><a href="/pictures/produtos/2/gd/red.jpg" rel="roadtrip" title="wine red"><img src="/pictures/produtos/2/thumbs/red.jpg" border="0"></a> <span style="color:#666666;">WINE RED - </span>'+ part_n +'RD</div>'+
											'<div style="border-bottom:1px solid #AAAAAA;"><a href="/pictures/produtos/2/gd/silver.jpg" rel="roadtrip" title="machine silver"><img src="/pictures/produtos/2/thumbs/silver.jpg" border="0"></a> <span style="color:#666666;">MACHINE SILVER - </span>'+ part_n +'SL</div>'+
											'<div style="border-bottom:1px solid #AAAAAA;"><a href="/pictures/produtos/2/gd/titanium.jpg" rel="roadtrip" title="titanium"><img src="/pictures/produtos/2/thumbs/titanium.jpg" border="0"></a> <span style="color:#666666;">TITANIUM - </span>'+ part_n +'</div>'+
											'</div>';
									break;
								default:
									html +=	'	<div><a href="/pictures/produtos/'+ a.req[0].ixf +'/'+ a.req[0].ixp +'_s.jpg" rel="roadtrip"><img src="/pictures/produtos/'+ a.req[0].ixf +'/'+ a.req[0].ixp +'_s.jpg" onload="gp.resizePicSpecs(this);" rel="roadtrip" border="0" onerror="this.style.display = \'none\',_gel(\'rodape_adv\').style.display = \'none\'"></a></div><div id="rodape_adv" class="conteudo">clique na imagem para amplia-la</div>';
							}
							
							html +=	'	<div id="rodape_produto_marca"></div>'+
									'	<div id="rodape_produto_pics"></div>';
							
							if(gp.params.marca.toLowerCase() == 'pagid' && gp.params.categoria.toLowerCase() == 'pastilhas'){
								html += '	<div id="rodape_produto_composto"><a href="/telas/pagid/compostos/compostos.html" rel="roadtrip" class="menu_produtos_dest" style="text-decoration:underline; color:#666666;">Tabela de Compostos</a></div>';
							}
							if(gp.params.marca.toLowerCase() == 'sabelt' && gp.params.categoria.toLowerCase() == 'bancos'){
								html += '	<div id="rodape_produto_composto"><a href="/pictures/produtos/4/DESENHO_'+ a.req[0].produto.replace('/','_') +'.jpg" rel="roadtrip"><img border="0" style="visibility:hidden;" src="/pictures/produtos/4/DESENHO_'+ a.req[0].produto.replace('/','_') +'.jpg" onload="_pic.resizeMaxDim(this,200,160);" onerror="this.style.display = \'none\';"></a> <a href="/pictures/produtos/4/TAMANHO_'+ a.req[0].produto.replace('/','_') +'.jpg" rel="roadtrip"><img border="0" style="visibility:hidden;" src="/pictures/produtos/4/TAMANHO_'+ a.req[0].produto.replace('/','_') +'.jpg" onload="_pic.resizeMaxDim(this,200,160);" onerror="this.style.display = \'none\';"></a></div>';
							}
									
							html += '</div>'+
									'</td></tr>'+
									'</table>';
										
							_inHTML('list_produtos',html);
							
							gp.produtos.singleLoaded = true;
							gp.produtos.buildPicsBar();
							
							$('a[rel="roadtrip"]').fancybox();
							
							break;
						default:
							if(a.req.length > 0){
								gp.produtos.rs = a.req;
								gp.produtos.currentPage = 1;
								gp.produtos.pageSize = 20;
								gp.produtos.buildList();
							}else{
								_inHTML('list_produtos',html);
							}
							break;
					}
				}
				
				_addEvent('cat','onchange',"gp.latFabricante();");
				_addEvent('fab','onchange',"gp.latOpcionais();");
				gp.latInSearch = false;				
				var ccat = cmbc.create({target:_gel('cat'), cod:'categoria', waitMessage:true, onLoad:gp.latFabricante});
				ccat.load();
				
			}else{
				_gel('meio_conteudo').style.display = 'none';
				_inHTML('list_produtos',gp.loadHTML);
				_get('/lib/inc_geral.asp', {type:'json',params:gp.params,onLoad:gp.produtos.load});
			}
		},
		checkOpcional:function(lbl,val){
			switch(gp.params.marca){
				case 'pagid':
					if(gp.params.categoria == 'pastilhas' && (lbl == 'front' || lbl == 'rear')){
						var pic = new Image();
						pic.onload = function(){
							gp.produtos.pics.push(this);
							if(gp.produtos.singleLoaded){
								gp.produtos.buildPicsBar();
							}
						}
						pic.src = '/pictures/produtos/3/'+ val +'.jpg';
					}
					break;
			}
		},
		buildPicsBar:function(){
			var pics = '';
			for(var i=0;i<gp.produtos.pics.length;i++){
				pics += '<a href="'+ gp.produtos.pics[i].src +'" rel="roadtrip"><img width="80" height="80" src="'+ gp.produtos.pics[i].src +'" class="rodape_produto_pic" border="0" /></a> ';
			}
			_inHTML('rodape_produto_pics',pics);
		},
		buildList:function(){
			var cont = 0, start = (gp.produtos.pageSize*(gp.produtos.currentPage-1));
			var limit = (gp.produtos.pageSize*gp.produtos.currentPage), marca = '',categoria = '' , pag_html = '' , cat_html = '', cat_comma = '';
			if(limit > gp.produtos.rs.length){limit = gp.produtos.rs.length}
			
			var pagc = parseInt(gp.produtos.rs.length/gp.produtos.pageSize);
			if(parseFloat(gp.produtos.rs.length/gp.produtos.pageSize) > pagc){pagc++}
			if(pagc > 1){
				pag_html = '<tr><td class="paginacao" style="font-size:12px;">';
				pag_html += 'paginas ';
				for(var i=1;i<=pagc;i++){
					if(i == gp.produtos.currentPage){
						pag_html += '<span style="cursor:pointer;" class="selPagina">'+ i + '</span> ';
					}else{
						pag_html += '<span style="cursor:pointer;" onclick="gp.produtos.setPagina('+ i +');">'+ i + '</span> ';
					}
				}
				pag_html += '</td></tr>';
			}
			
			var html = pag_html;
			html += '<tr><td>';
			var categoria_trocada = false, categoria_trocada_rodape = false;
			var class_row = 'lista_produto_rowAlt';
			
			for(var i=start;i<limit;i++){
				o = gp.produtos.rs[i];
				if(marca != o.marca){
					categoria_trocada = true;
					if(categoria_trocada_rodape){
						html += '</table>';
						categoria_trocada_rodape = false;
					}
					html += '<div class="topo_produto_marca">'+ o.marca +'</div>';
					marca = o.marca;
					cont = 0;
				}
				if(categoria != o.categoria){
					categoria_trocada = true;
					cols = [];
					if(categoria_trocada_rodape){
						html += '</table>';
						categoria_trocada_rodape = false;
					}
						
					cat_html += cat_comma + '<span id="menu_produtos" class="menu_produtos" style="cursor:pointer;" onclick="location.href=\'/produtos/'+ o.marca.toLowerCase() +'/'+ o.categoria.toLowerCase() +'\'">'+ o.categoria.toUpperCase() +'</span>';
					cat_comma = ' | ';
					categoria = o.categoria;
					modo_exibicao = o.modo_exibicao;
				}
				//<br/>'+ o.categoria_label.toUpperCase() +'
				switch(modo_exibicao){
					default: // lista
						if(categoria_trocada){
							html += '<div class="topo_produto_categoria">'+ o.categoria.toUpperCase() +'</div>';
							html += '<table class="lista_produto_table" celspacing="1" celspadding="2">';
							html += '<tr><td class="lista_produto_tableheader">PRODUTO</td>';
							for(on in o){
								if(on.substring(0,6) == 'label_' && o[on].toUpperCase().length > 0){
									html += '<td class="lista_produto_tableheader" style="'+ o[on.replace('label_','format_')] +'">'+ o[on].toUpperCase() +'</td>';
									cols.push(on.replace('label_',''));
								}
							}
							html += '</tr>';
							categoria_trocada = false;
							categoria_trocada_rodape = true;
						}
						conteudo = '<td>'+ o.produto +'</td>';
						for(var k=0;k<cols.length;k++){
							conteudo += '<td>'+ o['value_'+ cols[k]] +'</td>';
						}
						class_row = (class_row == 'lista_produto_row') ? 'lista_produto_rowAlt' : 'lista_produto_row';
						html += '<tr class="'+ class_row +'" onmouseover="this.className=\'lista_produto_rowOver\';" onmouseout="this.className=\''+ class_row +'\';" onclick="location.href = \'/produtos/'+ o.marca.toLowerCase() +'/'+ o.categoria.toLowerCase() +'/'+ o.permalink +'\'">'+ conteudo +'</tr>';
						
						break;
					case 2: //thumbs
						if(categoria_trocada){
							html += '<div class="topo_produto_categoria">'+ o.categoria.toUpperCase() +'</div>';
							categoria_trocada = false;
						}
					
						conteudo = 	'<span style="color:#333333;">CÓDIGO</span><br/>'+ o.produto;
						
						for(on in o){
							if(on.substring(0,6) == 'label_'){
								conteudo += '<br/><span style="color:#333333;">'+ o[on].toUpperCase() +'</span>';
							}
							if(on.substring(0,6) == 'value_'){
								conteudo += '<br/>'+ o[on];
							}
						}
						
						html +=	'<div class="thumb_produto_item" style="cursor:pointer; margin-right:'+ ((cont%2 == 0)?'15':'0') +'px;" onclick="location.href = \'/produtos/'+ o.marca.toLowerCase() +'/'+ o.categoria.toLowerCase() +'/'+ o.permalink +'\'">'+
								'	<div class="thumb_produto_topo">'+
								'		<div class="thumb_produto_topo_imagem"><img border=0 class="thumb_produto_img" src="/pictures/produtos/'+ o.ixf +'/'+ o.ixp +'_f.jpg" onerror="gp.errorPic(this,'+ o.ixf +','+ o.ixc +');" width="140" height="90"/></div>'+
								'		<div class="thumb_produto_topo_desc destaqueVermelho">'+ conteudo +'</div>'+
								'	</div>'+
								'	<div class="thumb_produto_base destaqueVermelho">MAIS DETALHES ></div>'+
								'</div>';
						break;
				}
				cont++;
			}
			for(var i=limit;i<gp.produtos.rs.length;i++){
				o = gp.produtos.rs[i];
				if(categoria != o.categoria){
					cat_html += cat_comma + '<span id="menu_produtos" class="menu_produtos" style="cursor:pointer;" onclick="location.href=\'/produtos/'+ o.marca.toLowerCase() +'/'+ o.categoria.toLowerCase() +'\'">'+ o.categoria.toUpperCase() +'</span>';
					cat_comma = ' | ';
					categoria = o.categoria;
				}
			}
			if(categoria_trocada_rodape){
				html += '</table>';
				categoria_trocada_rodape = false;
			}
			html += '</td></tr>';
			html += pag_html;
			html += '</table>';
			
			var topo = 	'<table width="100%" border="0" cellspacing="0" cellpadding="0">'+
						'<tr><td>'+ cat_html +'</td></tr>'+
						'<tr><td><div id="tit_produto">PRODUTOS ENCONTRADOS</div></td></tr>'+
						'<tr><td>&nbsp;</td></tr>';
			
			_inHTML('list_produtos',topo + html);
		},
		setPagina:function(a){
			gp.produtos.currentPage = a;
			gp.produtos.buildList();
		}
	},
	resizePicSpecs:function(o){
		var width = o.offsetWidth, height = o.offsetHeight, m_width = 680;
		if(width > m_width){
			o.style.display = 'none';
			o.style.width = m_width + 'px';
			o.style.height = (parseInt( (m_width*height)/width ))+'px';
			o.style.display = 'block';
		}
	},
	errorPic:function(o,f,c){
		if(f == 1){
			o.src= '/pictures/produtos/'+ f +'_'+ c +'.jpg';
		}else{
			o.src= '/pictures/produtos/'+ f +'/thumb.jpg';
		}
	},
	loadHTML:'<table width="100%" height="300" border="0" cellspacing="0" cellpadding="0"><tr><td align="center" valign="middle" style="font:12px normal Verdana, Arial, Helvetica, sans-serif; color:#B13535; font-weight:bold;"><img src="/pictures/icone/carregando.gif" /><br/><br/>carregando...</td></tr></table>',
	naoencontradoHTML:'<table width="100%" height="300" border="0" cellspacing="0" cellpadding="0"><tr><td align="center" valign="middle" style="font:12px normal Verdana, Arial, Helvetica, sans-serif; color:#B13535; font-weight:bold;">sem resultados para sua pesquisa</td></tr></table>'
}


var hashControl = {
	lastHash:location.hash,
	onchange:undefined,
	interval:500,
	msie:null,
	start:function(){
        if(isIE){
			this.msie = {iframe:_ce('IFRAME')};
			this.msie.iframe.style.display = 'none';
			this.msie.iframe.src = 'about:blank';
			_geltn('body')[0].appendChild(this.msie.iframe);
			this.msie['getDoc'] = function(){return this.iframe.contentWindow.document;};
			this.msie['getHash'] = function(){return this.getDoc().location.hash;}
			this.msie['setHash'] = function(hash){
					var d = hashControl.msie.getDoc();
					d.open();
					d.close();
					d.location.hash = hash;
			};
            this.msie.setHash(this.lastHash);
            this.lastHash = this.msie.getHash();
        }
		setTimeout('hashControl.check()',this.interval);
	},
	check:function(){
		if(isIE){
		  /* if( (this.lastHash != this.msie.getDoc().location.hash) || (this.lastHash != location.hash) ){
				if(this.lastHash != this.msie.getDoc().location.hash){
					this.lastHash = this.msie.getDoc().location.hash;
					location.hash = this.lastHash;
					this.msie.setHash(this.lastHash);
				}else if(this.lastHash != location.hash){
					this.lastHash = location.hash;
					this.msie.setHash(this.lastHash);
					this.msie.getDoc().location.hash = this.lastHash;
				}
				if(this.onchange != undefined){
					this.onchange();
					this.check();
				}
			}*/
		}else{
			if(this.lastHash != location.hash){
				this.lastHash = location.hash;
				if(isIE){
					this.msie.setHash(this.lastHash);
				}
				if(this.onchange != undefined){
					this.onchange();
					this.check();
				}
			}
		}
		setTimeout('hashControl.check()',this.interval);
	}
};

var _pic = {
	resizeMaxDim:function(o,mw,mh){
		if(o.offsetWidth > mw){
			o.height = parseInt((mw*o.offsetHeight)/o.offsetWidth);
			o.width = mw;
		}else if(o.offsetHeight > mh){
			o.width = parseInt((mh*o.offsetWidth)/o.offsetHeight);
			o.height = mh;
		}
		o.style.visibility = 'visible';
	}
};


