示例#1
0
    public function exibir($id, $area = "")
    {
        $Funcao = new Funcao();
        $anuncios = $this->carregar($id, $area);
        $anunciosMap = array_map("array_values", $anuncios);
        $anuncios[0] = $anunciosMap[0];
        $qtdeAnuncios = count($anuncios[0]) + 1;
        $anunciosPorLinha = 3;
        $maxProdutosAnuncio = 4;
        $exibirAnuncios = '
				<style>
					.anuncios {
						display: table;
						width: 100%;
					}
					.caixaAnuncio {
						width: 33.3333%;
						min-height: 200px;
						display: table-cell;
					}
					.tableRow {
						display: table-row;
					}
				</style>
				<table class="anuncios">
					';
        $linha = 0;
        for ($i = 0; $i < $qtdeAnuncios * 3; $i++) {
            if ($i == 0 or $i % $anunciosPorLinha == 0) {
                $linha = $i > 0 ? $linha + 1 : $linha;
                $linhaAtual = floor($linha / 3);
                $exibirAnuncios .= ($i > 0 ? "</tr>" : "") . (($linha - $linhaAtual - 2 * $linhaAtual == 0 and $i < $qtdeAnuncios * 3) ? '<tr><td colspan="3" style="height: 25px;"></td></tr>' : "") . ($i < $qtdeAnuncios * 3 ? '<tr align="center">' : "");
            }
            $exibirAnuncio = "";
            $exibirLink = false;
            $anuncioPosicao = $i - $linha * 3 + $linhaAtual * 3;
            $anuncio = $anuncios[0][$anuncioPosicao];
            if (is_array($anuncio)) {
                $anuncioInfo = $anuncio["tipo"] == 1 ? $anuncio["info"] : $anuncios[$anuncio["tipo"]][$anuncio["anuncio"]];
                switch ($linha - $linhaAtual - 2 * $linhaAtual) {
                    case 0:
                        $banner = $anuncioInfo["oferta"] == 1 ? "oferta" : ($anuncioInfo["lancamento"] == 1 ? "lancamento" : "");
                        $exibirAnuncio = $banner ? '<img src="imagens/banners/' . $banner . '.gif" />' : "";
                        break;
                    case 1:
                        $exibirLink = true;
                        $exibirAnuncio = '<img src="' . $this->pegarImagem($anuncio["tipo"], $anuncio["anuncio"], "p") . '" />';
                        break;
                    case 2:
                        $exibirLink = true;
                        if ($anuncio["tipo"] == 1) {
                            $produtosInfo = $anuncios[1];
                            $produtos = array_slice($anuncio["produtos"], 0, $maxProdutosAnuncio);
                            $codigos = array();
                            if ($anuncioInfo["exibir_codigo"] == 1) {
                                if ($anuncioInfo["exibir_codigo_geral"] == 1) {
                                    $codigos[] = $anuncioInfo["codigo"];
                                } else {
                                    foreach ($produtos as $produtoId) {
                                        $codigos[] = $Funcao->formatarCodigo($produtosInfo[$produtoId]["codigo"]);
                                    }
                                }
                                $exibirAnuncio .= implode(" | ", $codigos) . '<br>';
                            }
                            if ($anuncioInfo["exibir_descricao"] == 1) {
                                $exibirAnuncio .= ($anuncioInfo["descricao"] ? $anuncioInfo["descricao"] : $produtosInfo[$produtos[0]["descricao_site"]]) . '<br>';
                            }
                            if ($anuncioInfo["exibir_publicidade"] == 1) {
                                $exibirAnuncio .= '<span class="' . $anuncioInfo["span_publicidade"] . '">' . $anuncioInfo["publicidade"] . '</span><br>';
                            }
                            if ($anuncioInfo["exibir_preco"] == 1) {
                                $precos = array();
                                if ($anuncioInfo["exibir_preco_geral"] == 1) {
                                    $precos[] = array("preco" => $Funcao->formatarPreco($anuncioInfo["preco"]), "precoAntigo" => 0, "exibirPrecoAntigo" => 0, "disponibilidade" => 1);
                                } else {
                                    foreach ($produtos as $c => $produtoId) {
                                        $precos[] = array("preco" => $Funcao->formatarPreco($produtosInfo[$produtoId]["preco"]), "precoAntigo" => $Funcao->formatarPreco($produtosInfo[$produtoId]["preco_antigo"]), "exibirPrecoAntigo" => $produtosInfo[$produtoId]["exibir_preco_antigo"], "disponibilidade" => $produtosInfo[$produtoId]["disponibilidade"]);
                                    }
                                }
                                $exibirAnuncio .= $this->exibirPreco($precos) . '<br>';
                            }
                        } else {
                            $exibirAnuncio .= $anuncioInfo["descricao"] . '<br>';
                            if ($anuncioInfo["exibir_publicidade"] == 1) {
                                $exibirAnuncio .= '<span class="' . $anuncioInfo["span_publicidade"] . '">' . $anuncioInfo["publicidade"] . '</span><br>';
                            }
                        }
                        break;
                }
            }
            $exibirAnuncios .= '<td class="caixaAnuncio">' . ($exibirLink ? '<a href="' . $this->pegarUrl($anuncio, $anuncioInfo) . '">' . $exibirAnuncio . '</a>' : $exibirAnuncio) . '</td>';
        }
        $exibirAnuncios .= '
				</table>
			';
        return $exibirAnuncios;
    }