<?php
/* Pagina de OEM: /oem/{codigo} -> oem.php?c={codigo}
   Lista produtos reais (loja.db) cujas equivalencias contem o codigo OEM. */
require __DIR__ . '/_layout.php';
header('Content-Type: text/html; charset=utf-8');
function h($s){ return htmlspecialchars((string)$s, ENT_QUOTES, 'UTF-8'); }
function brl($v){ return 'R$ ' . number_format((float)$v, 2, ',', '.'); }
$BASE='https://www.revutoautoparts.com.br';

$c = isset($_GET['c']) ? strtolower(preg_replace('/[^A-Za-z0-9]/','', $_GET['c'])) : '';
if($c==='' || strlen($c)<6){ http_response_code(404); echo '<!doctype html><meta charset="utf-8"><title>OEM nao encontrado</title><p style="font-family:Arial;padding:40px">Codigo OEM nao encontrado. <a href="/">Voltar</a></p>'; exit; }

$oemdb=@new SQLite3(__DIR__.'/oem.db', SQLITE3_OPEN_READONLY);
$ids=array();
if($oemdb){ $st=$oemdb->prepare("SELECT prod_id FROM oem_index WHERE oem=:o LIMIT 48"); $st->bindValue(':o',$c); $r=$st->execute(); while($x=$r->fetchArray(SQLITE3_ASSOC)) $ids[]=(int)$x['prod_id']; }
if(!$ids){ http_response_code(404); echo '<!doctype html><meta charset="utf-8"><title>OEM nao encontrado</title><p style="font-family:Arial;padding:40px">Nenhum produto encontrado para o OEM '.h($c).'. <a href="/catalogo/">Ver catalogo</a></p>'; exit; }

$loja=@new SQLite3(__DIR__.'/loja.db', SQLITE3_OPEN_READONLY);
$prods=array();
if($loja){
  $in=implode(',', array_map('intval',$ids));
  $r=$loja->query("SELECT id,slug,nome,codigo,marca,preco,nums,foto,fotos FROM loja WHERE id IN ($in) AND status='ativo' ORDER BY preco");
  while($p=$r->fetchArray(SQLITE3_ASSOC)){
    $foto=trim((string)$p['foto']);
    if($foto==='' && !empty($p['fotos'])){ $a=json_decode($p['fotos'],true); if(is_array($a)&&!empty($a)) $foto=(string)$a[0]; }
    $p['_foto']=$foto; $prods[]=$p;
  }
}
if(!$prods){ http_response_code(404); echo '<!doctype html><meta charset="utf-8"><title>OEM</title><p style="font-family:Arial;padding:40px">Nenhum produto ativo para este OEM. <a href="/catalogo/">Catalogo</a></p>'; exit; }

/* agregados */
$marcas=array(); $equis=array(); $oemUP=strtoupper($c);
foreach($prods as $p){
  if(trim((string)$p['marca'])!=='') $marcas[trim($p['marca'])]=1;
  foreach(preg_split('#[\s,/;|]+#', (string)$p['nums']) as $t){ $t=trim($t); if($t!=='' && strlen(preg_replace('/[^A-Za-z0-9]/','',$t))>=4) $equis[strtoupper(preg_replace('/\s+/',' ',$t))]=$t; }
}
$marcaStr=implode(', ', array_keys($marcas));
$equiStr =implode(', ', array_slice(array_values($equis),0,40));
$url=$BASE.'/oem/'.$c;
$titulo='OEM '.$oemUP.' - Pecas e Equivalencias';
$descTxt='Pecas com a referencia OEM '.$oemUP.' para veiculos europeus'.($marcaStr?(' (marcas: '.$marcaStr.')'):'').'. '.count($prods).' produto(s) com preco, foto e garantia. Equivalencias e onde comprar no Brasil.';

/* schema ItemList */
$items=array();
$pos=1;
foreach($prods as $p){
  $purl=$BASE.'/comprar/'.$p['slug'];
  $foto=$p['_foto']; $img=($foto!=='')?((strpos($foto,'http')===0)?$foto:$BASE.$foto):($BASE.'/sem-foto.png');
  $it=array("@type"=>"ListItem","position"=>$pos++,"item"=>array(
    "@type"=>"Product","name"=>$p['nome'],"url"=>$purl,"image"=>$img,"sku"=>$p['codigo'],
    "brand"=>array("@type"=>"Brand","name"=>(trim((string)$p['marca'])?:'Revuto Auto Parts'))));
  if((float)$p['preco']>0){ $it['item']['offers']=array("@type"=>"Offer","priceCurrency"=>"BRL","price"=>number_format((float)$p['preco'],2,'.',''),"availability"=>"https://schema.org/InStock","url"=>$purl); }
  $items[]=$it;
}
$itemList=array("@context"=>"https://schema.org","@type"=>"ItemList","name"=>"Produtos OEM ".$oemUP,"numberOfItems"=>count($prods),"itemListElement"=>$items);
$breadcrumb=array("@context"=>"https://schema.org","@type"=>"BreadcrumbList","itemListElement"=>array(
  array("@type"=>"ListItem","position"=>1,"name"=>"Inicio","item"=>$BASE."/"),
  array("@type"=>"ListItem","position"=>2,"name"=>"OEM","item"=>$BASE."/catalogo/"),
  array("@type"=>"ListItem","position"=>3,"name"=>"OEM ".$oemUP,"item"=>$url)));
$faq=array("@context"=>"https://schema.org","@type"=>"FAQPage","mainEntity"=>array(
  array("@type"=>"Question","name"=>"O que e a referencia OEM ".$oemUP."?","acceptedAnswer"=>array("@type"=>"Answer","text"=>"OEM ".$oemUP." e um codigo de equivalencia para identificar a peca correta. Corresponde a ".count($prods)." produto(s) original(is) europeu(s)".($marcaStr?(" das marcas ".$marcaStr):"")." na Revuto Auto Parts.")),
  array("@type"=>"Question","name"=>"A peca OEM ".$oemUP." e original?","acceptedAnswer"=>array("@type"=>"Answer","text"=>"Sim, trabalhamos com pecas originais europeias e equivalencias OEM, com garantia de ate 12 meses e entrega para todo o Brasil."))));
$JSONOPT=JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES;
?><!DOCTYPE html><html lang="pt-BR"><head><meta charset="UTF-8">
<base href="https://www.revutoautoparts.com.br/">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title><?php echo h($titulo); ?> | Revuto Auto Parts</title>
<meta name="description" content="<?php echo h(substr($descTxt,0,300)); ?>">
<meta name="robots" content="index,follow">
<link rel="canonical" href="<?php echo h($url); ?>">
<link rel="icon" type="image/png" href="/favicon.png">
<meta property="og:type" content="website"><meta property="og:title" content="<?php echo h($titulo); ?>">
<meta property="og:description" content="<?php echo h(substr($descTxt,0,200)); ?>"><meta property="og:url" content="<?php echo h($url); ?>">
<script type="application/ld+json"><?php echo json_encode($itemList,$JSONOPT); ?></script>
<script type="application/ld+json"><?php echo json_encode($breadcrumb,$JSONOPT); ?></script>
<script type="application/ld+json"><?php echo json_encode($faq,$JSONOPT); ?></script>
<?php @include __DIR__.'/_schema-org.php'; ?>
<style>
.oewrap{max-width:1100px;margin:20px auto;padding:0 16px}
.oerumb{font-size:12.5px;color:#64748b;margin-bottom:12px}.oerumb a{color:#2563eb;text-decoration:none}
.oeh1{font-size:24px;font-weight:800;color:#0f172a}
.oesub{color:#475569;font-size:14px;margin:6px 0 4px}
.oebox{background:#f1f5f9;border-radius:10px;padding:12px 14px;margin:14px 0;font-size:13px;color:#334155;line-height:1.6;word-break:break-word}
.oebox .t{font-size:11px;font-weight:bold;color:#2563eb;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}
.oegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}
@media(max-width:900px){.oegrid{grid-template-columns:repeat(2,1fr)}}
.oecard{background:#fff;border-radius:14px;box-shadow:0 2px 10px rgba(0,0,0,.06);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit}
.oecard img{width:100%;height:160px;object-fit:contain;background:#f8fafc;padding:10px}
.oecard .in{padding:10px 12px;display:flex;flex-direction:column;gap:4px;flex:1}
.oecard .nm{font-size:13px;font-weight:600;color:#0f172a;line-height:1.3}
.oecard .pr{font-size:16px;font-weight:800;color:#16a34a;margin-top:auto}
.oecard .mk{font-size:11px;color:#3730a3;background:#eef2ff;padding:2px 7px;border-radius:20px;align-self:flex-start}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px}
<?php echo lay_css(); ?>
.foot .selos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:920px;margin:auto}
@media(max-width:760px){.foot .selos{grid-template-columns:repeat(2,minmax(0,1fr))}}
</style></head><body>
<?php echo lay_header(); ?>
<div class="oewrap">
  <div class="oerumb"><a href="/">Inicio</a> &rsaquo; <a href="/catalogo/">Catalogo</a> &rsaquo; OEM <?php echo h($oemUP); ?></div>
  <h1 class="oeh1">Pecas com OEM <?php echo h($oemUP); ?></h1>
  <div class="oesub"><?php echo count($prods); ?> produto(s) original(is) europeu(s)<?php echo $marcaStr?(' &middot; Fabricantes: '.h($marcaStr)):''; ?> &middot; Entrega para todo o Brasil</div>
  <?php if($equiStr): ?><div class="oebox"><div class="t">Equivalencias (OEM)</div><?php echo h($equiStr); ?></div><?php endif; ?>
  <div class="oegrid">
    <?php foreach($prods as $p): $foto=$p['_foto']; $img=$foto!==''?$foto:'/sem-foto.png'; ?>
    <a class="oecard" href="/comprar/<?php echo h($p['slug']); ?>">
      <img src="<?php echo h($img); ?>" alt="<?php echo h($p['nome']); ?>" loading="lazy" onerror="this.onerror=null;this.src='/sem-foto.png'">
      <div class="in">
        <?php if(trim((string)$p['marca'])!==''): ?><span class="mk"><?php echo h($p['marca']); ?></span><?php endif; ?>
        <span class="nm"><?php echo h($p['nome']); ?></span>
        <span class="pr"><?php echo (float)$p['preco']>0?brl($p['preco']):'Consultar'; ?></span>
      </div>
    </a>
    <?php endforeach; ?>
  </div>
</div>
<?php echo lay_footer(); ?>
</body></html>
