Esempio n. 1
0
 public static function todosNiveisCategorias(ProdutoCategoria $cate)
 {
     $lC = new ListaProdutoCategorias();
     if (!($cat = $lC->condicoes('', $cate->getId(), ListaProdutoCategorias::ID)->listar())) {
         $cat = new ProdutoCategoria();
     }
     if ($cat->disponivel) {
         if (!empty(self::$condicao)) {
             $cat->getProdutos()->condicoes('', '', '', '', "SELECT * FROM " . Sistema::$BDPrefixo . "relacionamento_produtos_categorias rpc INNER JOIN " . Sistema::$BDPrefixo . "produtos p ON p.id = rpc.produto WHERE rpc.categoria = '" . $cat->getId() . "' " . self::$condicao)->setGroup(ListaProdutos::ID);
         }
         while ($prod = $cat->getProdutos()->listar()) {
             $adicionar = true;
             if (!empty($a)) {
                 foreach ($a as $p) {
                     if ($p->getId() == $prod->getId()) {
                         $adicionar = false;
                         break;
                     }
                 }
             }
             if ($adicionar) {
                 $a[count($a)] = $prod;
             }
         }
         while ($cats = $cat->getSubCategorias()->listar("ASC")) {
             $b = self::todosNiveisCategorias($cats);
             if (!empty($a) && !empty($b)) {
                 foreach ($b as $prod) {
                     $adicionar = true;
                     foreach ($a as $p) {
                         if ($prod->getId() == $p->getId()) {
                             $adicionar = false;
                             break;
                         }
                     }
                     if ($adicionar) {
                         $a[count($a)] = $prod;
                     }
                 }
             } elseif (!empty($b)) {
                 $a = $b;
             }
         }
     }
     if (empty($a)) {
         $a = array();
     }
     return $a;
 }
 function navigateToCategory(ProdutoCategoria $pC)
 {
     $array['navegador'] = $pC->getNavegador();
     if ($pC->getSubCategorias()->getTotal() > 0) {
         $array['filhos'] = new ArrayObject();
         while ($sPC = $pC->getSubCategorias()->listar('ASC', ListaProdutoCategorias::NOME)) {
             $array['filhos']->append(navigateToCategory($sPC));
         }
     } else {
         $array['produtos'] = new ArrayObject();
         while ($p = $pC->getProdutos()->listar("ASC", ListaProdutos::NOME)) {
             $array['produtos']->append($p);
         }
     }
     return $array;
 }
 public function listar($ordem = "ASC", $campo = self::ID)
 {
     $info = parent::listar($ordem, $campo);
     if (!empty($info)) {
         parent::resgatarObjetos($info);
         $temp = new ProdutoCategoria($info[self::ID]);
         $temp->nome = $info[self::NOME];
         $temp->ordem = $info[self::ORDEM];
         $temp->disponivel = $info[self::DISPONIVEL] == self::VALOR_DISPONIVEL_TRUE ? true : false;
         $temp->visaoUnica = $info[self::VISAOUNICA] == self::VALOR_VISAOUNICA_TRUE ? true : false;
         $temp->descricaoPequena = $info[self::DESCRICAOPEQUENA];
         $temp->descricao = $info[self::DESCRICAO];
         $temp->subreferencia = $info[self::SUBREFERENCIA];
         if (!empty($info[self::IMAGEM])) {
             $temp->setImagem(new Image(new Arquivos(Sistema::$caminhoURL . Sistema::$caminhoDataProdutoCategorias . $info[self::IMAGEM])));
         }
         $temp->setURL($info[parent::URL]);
         $temp->setIdCategoriaPai($info[self::CATEGORIAPAI]);
         return $temp;
     }
 }
Esempio n. 4
0
 public static function createNavegador(ProdutoCategoria $pC, Idioma $idioma = null, Templates $tem = null, $separador = " > ")
 {
     $lPC = new ListaProdutoCategorias();
     $lPC->condicoes('', $pC->getIdCategoriaPai(), ListaProdutoCategorias::ID);
     if ($lPC->getTotal() > 0) {
         $cPC = $lPC->listar();
         if ($tem) {
             $tem2 = new Templates(Arquivos::__Create($tem->getArquivo()->arquivo));
             if ($idioma) {
                 $tem->trocar("nome", $idioma->getTraducaoByConteudo($pC->nome)->traducao);
             } else {
                 $tem->trocar("nome", $pC->nome);
             }
             $tem->trocar("url", $pC->getURL()->url);
             $tem->trocar("id", $pC->getId());
             $tem->trocar("ordem", $pC->ordem);
             if ($pC->getId() != '') {
                 return self::createNavegador($cPC, $idioma, $tem2, $separador) . $separador . $tem->concluir();
             }
         } else {
             if ($idioma) {
                 return self::createNavegador($cPC, $idioma, null, $separador) . $separador . $idioma->getTraducaoByConteudo($pC->nome)->traducao;
             } else {
                 return self::createNavegador($cPC, null, null, $separador) . $separador . $pC->nome;
             }
         }
     } else {
         if ($tem) {
             if ($idioma) {
                 $tem->trocar("nome", $idioma->getTraducaoByConteudo($pC->nome)->traducao);
             } else {
                 $tem->trocar("nome", $pC->nome);
             }
             $tem->trocar("url", $pC->getURL()->url);
             $tem->trocar("id", $pC->getId());
             $tem->trocar("ordem", $pC->ordem);
             if ($pC->getId() != '') {
                 return $tem->concluir();
             }
         } else {
             if ($idioma) {
                 return $idioma->getTraducaoByConteudo($pC->nome)->traducao;
             } else {
                 return $pC->nome;
             }
         }
     }
 }
Esempio n. 5
0
 public function addCategoria(ProdutoCategoria $pC)
 {
     if ($pC->getId() != '' && $this->getId() != '') {
         $con = BDConexao::__Abrir();
         $con->executar("INSERT INTO " . Sistema::$BDPrefixo . "relacionamento_produtos_categorias(produto, categoria) VALUES('" . $this->getId() . "','" . $pC->getId() . "')");
     }
 }
}
$lPC = new ListaProdutoCategorias();
$iLPC->createRepeticao("repetir->ProdutoCategorias");
if (!empty($_GET['busca'])) {
    $lPC->condicoes('', "%" . $_GET['busca'] . "%", 'empresa', 'LIKE');
}
$iLPC->condicao("condicaoBusca", !empty($_SESSION['nivel']));
if (!empty($_GET['categoria'])) {
    $lPC->condicoes('', $_GET['categoria'], ListaProdutoCategorias::ID);
    if ($lPC->getTotal() > 0) {
        $cP = $lPC->listar();
    } else {
        $cP = new ProdutoCategoria();
    }
} else {
    $cP = new ProdutoCategoria();
}
$lPC = $cP->getSubCategorias();
if (isset($_GET['json'])) {
    $cond = array();
    if (!empty($_GET['categoria'])) {
        $rs['id'] = $cP->getIdCategoriaPai();
        $rs['nome'] = 'Voltar';
        $rs['filhos'] = '';
        $cond[] = $rs;
    }
    while ($pC = $lPC->listar()) {
        $rs['id'] = $pC->getId();
        $rs['nome'] = str_replace('"', "'", $pC->getNavegador());
        $rs['filhos'] = $pC->getSubCategorias()->getTotal();
        $cond[] = $rs;
            $i->addTraducao($t);
        }
        $lI->resetCondicoes();
        $lI->setParametros(0);
        $_POST = '';
        $javaScript .= Aviso::criar("Categoria salva com sucesso!");
    } else {
        $javaScript .= Aviso::criar($erro);
    }
}
if (!empty($_GET['categoria'])) {
    $lCP = new ListaProdutoCategorias();
    $lCP->condicoes('', $_GET['categoria'], ListaProdutoCategorias::ID);
    $cP = $lCP->listar();
} else {
    $cP = new ProdutoCategoria();
}
$iCPC->trocar("linkVoltar", "?p=" . $_GET['p'] . "&a=listarProdutoCategorias&categoria=" . $cP->getId());
$iCPC->trocar("nome", $_POST['nome']);
$iCPC->trocar("url", $_POST['url']);
$iCPC->trocar("ordem", $_POST['ordem']);
$iCPC->trocar("subreferencia", $_POST['subreferencia']);
$iCPC->trocar("disponivel", $_POST['disponivel']);
$iCPC->trocar("visaoUnica", $_POST['visaoUnica']);
$iCPC->trocar("descricaoPequena", $_POST['descricaoPequena']);
$iCPC->trocar("descricao", $_POST['descricao']);
$iCPC->trocar("id.ProdutoCategoria", $cP->getId());
$sub = "repetir->nome.ProdutoCategorias.Idiomas";
$sub2 = "repetir->descricao.ProdutoCategorias.Idiomas";
$sub3 = "repetir->descricaoPequena.ProdutoCategorias.Idiomas";
$iCPC->createRepeticao($sub);