Phalcon Framework 3.2.2

SolrServerException: org.apache.solr.search.SyntaxError: Cannot parse 'marcaseo_marcaseo_s:-2essential': Encountered " "-" "- "" at line 1, column 20.\nWas expecting one of:\n <BAREOPER> ...\n "(" ...\n "*" ...\n <QUOTED> ...\n <TERM> ...\n <PREFIXTERM> ...\n <WILDTERM> ...\n <REGEXPTERM> ...\n "[" ...\n "{" ...\n <LPARAMS> ...\n "filter(" ...\n <NUMBER> ...\n

/var/www/iLove2.0/apps/frontend/controllers/CategoriaController.php (125)
#0SolrClient->query(Object(SolrQuery))
/var/www/iLove2.0/apps/frontend/controllers/CategoriaController.php (125)
<?php
namespace Multiple\Frontend\Controllers;
 
use Phalcon\Mvc\Controller;
use Phalcon\Http\Request;
use Multiple\Frontend\Controllers\IndexController as IndexActions;
use Phalcon\Cache\Backend\File as BackFile;
use Phalcon\Cache\Frontend\Data as FrontData;
 
 
class CategoriaController extends Controller{
  public function indexAction(){
 
    $request = new Request;
 
    $query = $this->RouteCategoriaSeo($this->dispatcher);
 
    $this->view->page       = $this->dispatcher->getParam("page");
    $this->view->nomeseo     = $this->dispatcher->getParam("nomeseo");
    $this->view->numeropagina  = $request->getQuery("pagina");
 
    $this->view->newsDegubMode = (isset($_GET['newsdebug']))?true:false ;
    $parametros = $viewParametros = $this->parametrosProdutos($this->dispatcher,$request,$this->view->page,$query);
 
    $this->view->likes = array_filter(unserialize($this->cookies->get("likes")->getValue()));
    $this->view->categoria = $viewParametros['categoria'];
 
    $viewParametros['categoria'] = base64_encode($viewParametros['categoria']);
    $this->view->parametros = $viewParametros;
 
 
    $breads = $this->helper->categoria_bread($this->view->page,$parametros);
 
    $this->view->breads = $breads["breads"];
 
    $this->view->headerlojamarca = $this->headerlojamarca($parametros,$breads["parceiro"]);
 
    $this->view->allcatsbread = array_column($breads["allcats"],"seo");
 
    $this->view->tituloPage = $this->tituloPage($parametros,$breads);
 
    $this->view->descPage = $this->descPage($parametros,$breads);
 
    $this->view->textoVendedor = $this->textVend($parametros,$breads);
 
    $this->view->tituloCat = end($breads["breads"])["categoria"];
 
    $this->view->allInfoCat = $breads["categoria"];
 
    $this->view->categoria  = $parametros["categoria"];
 
    $this->view->debug      = $parametros["debug"];
 
    $frontCache = new FrontData([
      "lifetime" => 20000,
    ]);
 
    $cache = new BackFile($frontCache,[
      "cacheDir" => APPLICATION_PATH . "/cache/",
    ]);
 
    $cacheProdutos = $cache->get(base64_encode('PRODUTOS-'.md5($_SERVER['REQUEST_URI'])));
 
    if($cacheProdutos === null){
      $cacheProdutos = $this->produtos($parametros,$this->view->numeropagina);
      $cache->save(base64_encode('PRODUTOS-'.md5($_SERVER['REQUEST_URI'])), $cacheProdutos);
    }
 
    $cacheProdutos["filtros"] = $this->filtrosLateraisMarcasLojas($parametros);
 
    $this->view->produtos = $cacheProdutos;
 
    $this->view->ranges = $this->ranges($this->view->produtos["ranges"]);
 
    $this->view->qtdprod   = $this->helper->contagem($this->view->produtos["contagem"]);
 
    $this->view->lateralCats = $this->helper->getCategorias(
      'menu.categoria',
      'closeMenu',
      'menu-acordion menu-close',
      $this->view->categoria,
      $this->view->page,
      $parametros,
      $this->helper->contador($this->view->page,$parametros),
      $this->view->allcatsbread
    );
 
    //footer
      $this->view->dados = array (
      'novaslojasmarcas'     => $this->helper->footer(7),
      'footertopcategorias'  => $this->helper->footer(8),
      'footermarcas'      => $this->helper->footer(9),
      'footerlojas'      => $this->helper->footer(10)
    );
 
    if ($request->getQuery("debug")){
      $this->view->param = $this->view->produtos;
    }
    else{
      $this->view->param = $parametros;
    }
 
    $this->view->render("categoria",'index');
  }
 
  public function ranges($ranges){
    $rang = [];
    foreach($ranges as $key => $range){
      if ($range!=0){
        $rang[$key] =$range;
 
      }
    }
    return $rang;
  }
 
  public function headerlojamarca($params,$parceiro){
 
    if ($params["page"]=="marca"){
      $client = $this->helper->solrConnect('marcasseo');
      $query = new \SolrQuery();
      $query->setQuery('marcaseo_marcaseo_s:'.$params['marcas']);
      $query->addFilterQuery("marcaseo_status_i:1");
      $query->setRows(1);
      $response = $client->query($query)->getResponse();
      $headermarca = $response->response->docs;
      return $headermarca[0];
    }
    if ($params["page"]=="loja"){
      return $parceiro;
    }
    return false;
  }
 
 
  public function menuContent($parametros=false){
    return $parametros;
  }
 
  public function cores(){
    $client = $this->helper->solrConnect('cores');
    $request = new Request();
    $query = new \SolrQuery();
 
    $query->setQuery("*");
 
    $query->addFilterQuery("cor_status_i:1");
 
    $response = $client->query($query)->getResponse();
 
    $cores = $response->response->docs;
 
    return $cores;
  }
 
  public function RouteCategoriaSeo($dispatcher){
    $cat = [];
    $cat[] = $dispatcher->getParam("categoria");
    $cat[] = $dispatcher->getParam("categoria2");
    $cat[] = $dispatcher->getParam("categoria3");
    $cat[] = $dispatcher->getParam("categoria4");
 
    $cat = array_filter($cat);
 
    $query = implode("/",$cat);
 
    return $query;
  }
 
  public function produtos($parametros,$offset=false,$filtros=false){
 
    $client = $this->helper->solrConnect('produtosdisponiveis');
    $rows = 50;
    $request = new Request();
    $query = new \SolrQuery();
 
    if ($offset){
      $startpoint = $rows*$offset;
      $query->setStart($startpoint);
    }
 
    if(!$parametros["ordem"]){
      if ($parametros["page"]=="novidades"){
        $query->addSortField("score desc, produto_alteracao_dt",1);
      }else{
        $query->addSortField("score desc, random_".date("d"),0);
      }
    }else{
      $ordem = $parametros["ordem"];
      $ord = $this->lerOrdem($ordem);
      $query->addSortField("score desc,".$ord['campo'],$ord['ordem']);
    }
 
    if($parametros["page"]=="outlet"){
      $query->addFilterQuery("-produto_desconto_i:0");
    }
 
    if ($parametros["page"]=="busca"){
 
      if(!$parametros["termo"]){ return"{}";}
      $query->setQuery('"'.$parametros["termo"].'"');
    $query->addFilterQuery("(produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:*");
 
      $query->addFilterQuery('+produto_nome_poss:"'.$parametros["termo"].'"');
 
      //$query->addFilterQuery('-produto_nomeseo_s:"'.$slugified.'"');
    }
 
    if ($parametros['categoria']){
      $moduloNewsCategoria = (!$parametros["ordem"]) ? " AND produto_news_nomeseo_sm:". $parametros['categoria'] : " ";
      if ($parametros["page"]=="categoria" OR $parametros["page"]=="outlet" OR $parametros["page"]=="novidades"){
        $query->setQuery("((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:". $parametros['categoria'].$moduloNewsCategoria.") OR ((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:".$parametros['categoria'].")");
      }else{
        $query->addFilterQuery("produto_categoria_nomeseo_sm:(". $parametros["categoria"] . ")");
      }
    }
 
 
    $moduloNewsGeral  = (!$parametros["ordem"]) ? " AND produto_news_nomeseo_sm:*": " ";
    if ($parametros['marcas']){
 
      $marcas = str_replace(","," OR ",$parametros["marcas"]);
      $marcas = trim($marcas);
 
      if ($parametros["page"]=="marca"){
        $query->setQuery('((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:* AND produto_marcaseo_s:"'. $marcas.'"'.$moduloNewsGeral.') OR (produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:* AND produto_marcaseo_s:"'. $marcas.'"');
      }else{
        $marcaComplemento = '{!tag=marcas}produto_marcaseo_s:('. $marcas .')';
      }
    }
 
    if ($parametros['lojas']){
      $lojasArray = explode(",", $parametros['lojas']);
      $lojas = str_replace(","," OR ",$parametros["lojas"]);
      $lojas = trim($lojas);
      if ($parametros["page"]=="loja"){
        if(!$lojas){ return "";}
        $query->setQuery('((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:* AND parceiro_nomeseo_s:'. $lojas.$moduloNewsGeral.') OR (produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:* AND parceiro_nomeseo_s:"'. $lojas.'"');
      }else if(!is_numeric($lojas)){
        if(!$lojas){ return "";}
        $lojaComplemento = "";
        $i = 0;
        $c = count($lojasArray);
        foreach ($lojasArray as $lojaNome) {
          $lojaComplemento .= '{!tag=lojas}parceiro_nomeseo_s:'.$lojaNome.' OR ';  
        }
        $lojaComplemento = rtrim($lojaComplemento," OR ");
        
      }else{
        $lojaComplemento =  '{!tag=lojas}parceiro_nomeseo_s:* AND produto_parceiroid_i:'.$lojas;
      }
    }
 
    $marcaComplemento = ($marcaComplemento) ? $marcaComplemento : "*";
    $lojaComplemento = ($lojaComplemento) ? $lojaComplemento : "*";
 
    if($marcaComplemento !== "*" && $lojaComplemento == "*" ){
      $query->addFilterQuery($marcaComplemento);
    }
    else if($marcaComplemento == "*" && $lojaComplemento !== "*"){
      $query->addFilterQuery($lojaComplemento);
    }
    else if($marcaComplemento !== "*" && $lojaComplemento !== "*"){
      $query->addFilterQuery($marcaComplemento." OR ".$lojaComplemento);
    }
 
    if ($parametros['preco-max']){
      $query->addFilterQuery('produto_precofinal_f:[* TO '. $parametros["preco-max"]. ']');
    }
 
    if ($parametros['preco-min']){
      $query->addFilterQuery('produto_precofinal_f:['. $parametros["preco-min"]. ' TO *]');
    }
 
    if ($parametros['cores']){
 
      $cores = str_replace(","," OR ",$parametros["cores"]);
 
      $query->addFilterQuery('{!tag=cor}produto_corseo_sm:('. $cores . " )");
    }
 
    if ($parametros['desconto']){
      $query->addFilterQuery('{!tag=desc}produto_desconto_i:['. $parametros["desconto"]. ' TO *]');
 
    }
 
    if ($parametros['tamanhos']){
 
      $tamanhos = str_replace(","," OR ",$parametros["tamanhos"]);
 
      $query->addFilterQuery('{!tag=tamanho}produto_tamanhoseo_s:('. $tamanhos . ")");
    }
 
    if($parametros["excluirIds"]){
      foreach ($parametros["excluirIds"] as $id) {
        $query->addFilterQuery("-produto_id_i:".$id);
      }
    }
 
    $query->addFilterQuery("parceiro_status_i:1");
 
 
    $query->setGroup(true);
 
    $query->setGroupMain(true);
 
    $query->addGroupField("produto_groupid_s");
 
    $query->setRows($rows);
 
    $query->setFacet(true);
 
    $query->setFacetMinCount(1);
 
    $query->addFacetField('{!ex=marcas}produto_marcaseo_s')->
        addFacetField('{!ex=marcas}produto_marca_s')->
        addFacetField('produto_material_s')->
        // addFacetField('{!ex=tamanho}produto_tamanho_s')->
        // addFacetField('{!ex=tamanho}produto_tamanhoseo_s')->
        addFacetField('{!ex=lojas}parceiro_nomeseo_s')->
        addFacetField('{!ex=lojas}parceiro_nome_s')->
        // addFacetField('{!ex=cor}produto_cor_sm')->
        // addFacetField("{!ex=cor}produto_corseo_sm")->
        addFacetField("{!ex=desc}produto_desconto_i");
 
    $query->addParam("facet.interval","produto_desconto_i");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=20}[20,100]");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=40}[40,100]");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=70}[70,100]");
 
    // if($filtros){
    //   // $query->addParam("facet.pivot","{!ex=produto_tamanho_s key=tamanhos}produto_tamanho_s,produto_disponivel_i,produto_tamanhoseo_s");
    //   $query->addParam("facet.pivot","{!ex=produto_marca_s key=marcas}produto_marcaseo_s,produto_marca_s,produto_disponivel_i");
    //   $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=lojas}parceiro_nome_s,parceiro_nomeseo_s,produto_disponivel_i");
    //   // $query->addParam("facet.pivot","{!ex=produto_cor_sm key=cores}produto_cor_sm,produto_corseo_sm,produto_disponivel_i");
 
    // }else{
    //   // $query->addParam("facet.pivot","{!ex=produto_tamanho_s key=tamanhos}produto_tamanhoseo_s");
    //   $query->addParam("facet.pivot","{!ex=produto_marca_s key=marcas}produto_marcaseo_s");
    //   $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=lojas}parceiro_nomeseo_s");
    //   // $query->addParam("facet.pivot","{!ex=produto_cor_sm key=cores}produto_corseo_sm");
    // }
 
    $query->addParam("facet.pivot","{!ex=produto_marca_s key=marcas}produto_marcaseo_s");
     $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=lojas}parceiro_nomeseo_s");
 
     $query->addParam("facet.pivot","{!ex=produto_marca_s key=filtrosmarcas}produto_marcaseo_s,produto_marca_s,produto_disponivel_i");
    $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=filtroslojas}parceiro_nome_s,parceiro_nomeseo_s,produto_disponivel_i");
 
    $query->addParam("facet.limit","1000000");
    $query->addParam("facet.sort","index");
 
 
    $response = $client->query($query)->getResponse();
 
    if ($parametros['debug']){
      echo '<pre>';
      print_r($response);
      die;
    }
 
    if(!$filtros){
      $produtos["produtos"] = $response->response->docs;
      $produtos["facets"] = $response->facet_counts->facet_fields;
      $produtos["contagem"] = $response->response->numFound;
      $produtos["ranges"]  = $response->facet_counts->facet_intervals->produto_desconto_i;
    }
 
    //$produtos["filtros"] = $this->limpaFiltros($response->facet_counts->facet_pivot,$filtros);
 
    if (!$produtos){
      return array("Error"=>"Nenhuma Produto encontrado");
    }
    return $produtos;
  }
 
  public function filtrosLateraisMarcasLojas($parametros){
    $client = $this->helper->solrConnect('produtosdisponiveis');
    $rows = 50;
    $request = new Request();
    $query = new \SolrQuery();
 
    if($parametros["page"]=="outlet"){
      $query->addFilterQuery("-produto_desconto_i:0");
    }
 
    if($parametros["page"]=="busca"){
 
      if(!$parametros["termo"]){ return"{}";}
      $query->setQuery('"'.$parametros["termo"].'"');
      $query->addFilterQuery("(produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:*");
      $query->addFilterQuery('+produto_nome_poss:"'.$parametros["termo"].'"');
    }
 
    if ($parametros['categoria']){
      if ($parametros["page"]=="categoria" OR $parametros["page"]=="outlet" OR $parametros["page"]=="novidades"){
        $query->setQuery("((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:". $parametros['categoria']." AND produto_news_nomeseo_sm:". $parametros['categoria'].") OR ((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:".$parametros['categoria'].")");
      }else{
        $query->addFilterQuery("produto_categoria_nomeseo_sm:(". $parametros["categoria"] . ")");
      }
    }
 
    if ($parametros['preco-max']){
      $query->addFilterQuery('produto_precofinal_f:[* TO '. $parametros["preco-max"]. ']');
    }
 
    if ($parametros['preco-min']){
      $query->addFilterQuery('produto_precofinal_f:['. $parametros["preco-min"]. ' TO *]');
    }
 
    if ($parametros['desconto']){
      $query->addFilterQuery('{!tag=desc}produto_desconto_i:['. $parametros["desconto"]. ' TO *]');
    }
 
    if($parametros["excluirIds"]){
      foreach ($parametros["excluirIds"] as $id) {
        $query->addFilterQuery("-produto_id_i:".$id);
      }
    }
 
    $query->addFilterQuery("parceiro_status_i:1");
    $query->setGroup(true);
    $query->setGroupMain(true);
    $query->addGroupField("produto_groupid_s");
    $query->setRows($rows);
    $query->setFacet(true);
    $query->setFacetMinCount(1);
 
    $query->addFacetField('{!ex=marcas}produto_marcaseo_s')->
        addFacetField('{!ex=marcas}produto_marca_s')->
        addFacetField('produto_material_s')->
        addFacetField('{!ex=lojas}parceiro_nomeseo_s')->
        addFacetField('{!ex=lojas}parceiro_nome_s')->
        addFacetField("{!ex=desc}produto_desconto_i");
 
    $query->addParam("facet.interval","produto_desconto_i");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=20}[20,100]");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=40}[40,100]");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=70}[70,100]");
 
    $query->addParam("facet.pivot","{!ex=produto_marca_s key=marcas}produto_marcaseo_s");
     $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=lojas}parceiro_nomeseo_s");
 
     $query->addParam("facet.pivot","{!ex=produto_marca_s key=filtrosmarcas}produto_marcaseo_s,produto_marca_s,produto_disponivel_i");
    $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=filtroslojas}parceiro_nome_s,parceiro_nomeseo_s,produto_disponivel_i");
 
    $query->addParam("facet.limit","1000000");
    $query->addParam("facet.sort","index");
 
 
    $response = $client->query($query)->getResponse();
 
 
    $produtos["filtros"] = $response->facet_counts->facet_pivot;
 
    if (!$produtos){
      return array("Error"=>"Nenhuma Produto encontrado");
    }
    return $produtos["filtros"] = $response->facet_counts->facet_pivot;
 
  }
 
  public function buscaExata($parametros,$offset=false){
 
    $client = $this->helper->solrConnect('produtos');
    $rows = 50;
    $request = new Request();
    $query = new \SolrQuery();
 
    if($offset){
      $startpoint = $rows*$offset;
      $query->setStart($startpoint);
    }
 
    if(!$parametros["ordem"]){
      $query->addSortField("score desc, random_".date("d"),0);
    }else{
      $ordem = $parametros["ordem"];
      $ord = $this->lerOrdem($ordem);
      $query->addSortField("score desc,".$ord['campo'],$ord['ordem']);
    }
 
    if(!$parametros["termo"]){ return"{}";}
 
    //$slugified = $this->helper->slugify($parametros["termo"]);
    $query->setQuery('"'. $parametros["termo"] .'"');
 
    //$querySyntax =   '(produto_marcaseo_s:'.$slugified.'^8 OR parceiro_nomeseo_s:'.$slugified.'^7 OR produto_nomeseo_s:"'.$slugified.'"^6)';
 
//    $query->setQuery("((".$querySyntax." AND produto_news_nomeseo_sm:*) OR ".$querySyntax.")");
 
    $query->addFilterQuery("(produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:*");
 
    if ($parametros['categoria']){
      $query->addFilterQuery("produto_categoria_nomeseo_sm:(". $parametros["categoria"] . ")");
    }
 
    if ($parametros['marcas']){
 
      $marcas = str_replace(","," OR ",$parametros["marcas"]);
      $marcas = trim($marcas);
 
      $query->addFilterQuery('{!tag=marcas}produto_marcaseo_s:("'. $marcas . '")');
    }
 
    if ($parametros['lojas']){
 
      $lojas = str_replace(","," OR ",$parametros["lojas"]);
      $lojas = trim($lojas);
      if(!$lojas){ return "";}
 
      $query->addFilterQuery('{!tag=lojas}parceiro_nomeseo_s:("'. $lojas . '")');
    }
 
 
    if ($parametros['preco-max']){
      $query->addFilterQuery('produto_precofinal_f:[* TO '. $parametros["preco-max"]. ']');
    }
 
    if ($parametros['preco-min']){
      $query->addFilterQuery('produto_precofinal_f:['. $parametros["preco-min"]. ' TO *]');
    }
 
    if ($parametros['desconto']){
      $query->addFilterQuery('{!tag=desc}produto_desconto_i:['. $parametros["desconto"]. ' TO *]');
 
    }
 
    $query->addFilterQuery("parceiro_status_i:1");
 
    $query->setGroup(true);
 
    $query->setGroupMain(true);
 
    $query->addGroupField("produto_groupid_s");
 
    $query->setRows($rows);
 
 
    $response = $client->query($query)->getResponse();
 
    $produtos["produtos"] = $response->response->docs;
    $produtos["contagem"] = $response->response->numFound;
 
    if (!$produtos){
      return array("Error"=>"Nenhuma Produto encontrado");
    }
    return $produtos;
  }
  public function limpaFiltros($lista,$return = false){
    if($return){
      return $lista;
    }
 
    foreach ($lista as $filtro => $valores) {
      foreach ($valores as $i => $filtroItem) {
        $lista->$filtro[$i] = $filtroItem->value ;
      }
    }
    return $lista;
  }
 
  public function parametrosProdutos($routeParams,$requestParams,$page,$query){
 
    $parametros["page"]       = $page;
    $parametros["marcas"]       = $routeParams->getParam("marcas") ? $routeParams->getParam("marcas") : $requestParams->getQuery("marcas");
    $parametros["lojas"]       = $routeParams->getParam("lojas") ? $routeParams->getParam("lojas") : $requestParams->getQuery("lojas");
    $parametros["categoria"]   = $query ? $query : $requestParams->getQuery("categoria");
    $parametros["preco-min"]  = $requestParams->getQuery("preco-min");
    $parametros["preco-max"]   = $requestParams->getQuery("preco-max");
    $parametros["ordem"]       = $requestParams->getQuery("ordem");
    $parametros["cores"]       = $requestParams->getQuery("cores");
    $parametros["tamanhos"]   = $requestParams->getQuery("tamanhos");
    $parametros["materiais"]   = $requestParams->getQuery("materiais");
    $parametros["desconto"]   = $requestParams->getQuery("desconto");
    $parametros["debug"]       = $requestParams->getQuery("debug");
    $page == "busca" ? $parametros["termo"] = $routeParams->getParam("termo") : "";
 
    return $parametros;
  }
 
  public function lerOrdem($ordem){
    switch ($ordem) {
        case "menor-preco":
            return array("campo"=>"produto_precofinal_f","ordem"=> 0 );
            break;
        case "maior-preco":
            return array("campo"=>"produto_precofinal_f","ordem"=> 1 );
            break;
        case "mais-novos": // Cadastro mais novos
            return array("campo"=>"produto_cadastro_dt","ordem"=> 1 );
            break;
        case "descontos":
            return array("campo"=>"produto_desconto_i","ordem"=> 1 );
            break;
        case "mais-curtidos":
            return array("campo"=>"produto_likes_i","ordem"=> 1 );
            break;
        case "mais-vendidos":
            return array("campo"=>"produto_views_i","ordem"=> 1 );
            break;
        default:
          return false;
    }
  }
  public function AgrupaNomeComSEO($array1,$array2){
 
      $newArray=[];
 
      foreach ($array2 as $key=> $seo){
        $newArray["grupo"][$key]['count'] = $seo;
        $newArray["grupo"][$key]['name'] = $this->helper->slugify($key);
        $newArray["chaves"][$newArray["grupo"][$key]['name']]=$key;
      }
      return $newArray;
  }
 
  public function apiProdutos($produtos,$likes, $erro=false,$parametros=false,$offset=false,$path=false){
 
    $prods = $this->view->getPartial("modulos/lista",[
      "exato"=> $produtos['exato'] ,
      "lista"=> $produtos['produtos'] ,
      "class"=>"produto",
      "itemClass"=>"",
      "bloco"=>"produto/produto",
      "likes" => $likes,
      "banners" => true,
      "path" => $path,
      "qtdprod" => $produtos['contagem'],
      "erro" => $erro,
      "parametros" => $parametros,
      "paginacao"  => $offset,
      "path" => $path
    ]);
 
    return $prods;
  }
 
  public function apiCores($parametros){
    $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"], 'debug'=> 0 ],0, true);
    $produtos   = $this->produtos($parametros,1);
    $cores = $this->view->getPartial("filtros/cores",["param_cores"=>$parametros, "filtros" =>$filtros, "produtos"=>$produtos]);
 
    return $cores;
  }
  public function apiDescontos($produtos,$parametros){
    $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"]],1, true)['filtros'];
    $produtos   = $this->produtos($parametros,1);
 
    $descontos = $this->view->getPartial("filtros/descontos",['ranges'=>$this->ranges($produtos["ranges"]),"param_desconto"=>$parametros, "filtros" =>$filtros, "produtos"=>$produtos]);
 
    return $descontos;
  }
  public function apiTamanhos($produtos,$parametros){
    $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"] ],1, true)['filtros'];
    $produtos   = $this->produtos($parametros,1);
 
    $tamanhos = $this->view->getPartial("filtros/tamanhos",['tamanhos'=>$produtos,"param_tamanhos"=>$parametros, "filtros" =>$filtros, "produtos"=>$produtos]);
 
    return $tamanhos;
  }
  public function apiMarcas($filtro,$parametros){
    // $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"] ],1, true)['filtros'];
    // $produtos   = $this->produtos($parametros,1);
    // $parametros["marcas"] = explode(",",$parametros["marcas"]);
 
    // $marcas = $this->view->getPartial("filtros/marcas",["param_marcas"=>$parametros["marcas"], "produtos_filtros" => $filtro]);
 
    // return $marcas;
    return false;
  }
  public function apiLojas($filtro,$parametros){
    // $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"] ],1, true)['filtros'];
    // $produtos   = $this->produtos($parametros,1);
    // $parametros["lojas"] = explode(",",$parametros["lojas"]);
 
    // $lojas = $this->view->getPartial("filtros/lojas",["param_lojas"=>$parametros["lojas"], "produtos_filtros"=>$filtro]);
 
    // return $lojas;
    return false;
  }
  public function apiPrecos($parametros){
    $precos = $this->view->getPartial("filtros/precos",["preco_min"=>$parametros["preco-min"],"preco_max"=>$parametros["preco-max"]]);
 
    return $precos;
  }
 
  public function tituloPage($param,$allcats){
    if ($param["page"]=="busca"){
      return $this->tag->texto("titulo-busca-seo") . " " . $this->tag->texto("titulo-sufixo-seo");
    }
    if ($param["page"]=="categoria"){
      if ($allcats["categoria"]->categoria_titulopagina_s){
        return $allcats["categoria"]->categoria_titulopagina_s;
      }
 
      return $allcats["categoria"]->categoria_nome_s . " " . $this->tag->texto("sufixo-titulo-categoria-seo");
    }
    if ($param["page"]=="outlet"){
      if ($allcats["categoria"]->categoria_titulopaginaoutlet_s){
        return $allcats["categoria"]->categoria_titulopaginaoutlet_s;
      }
 
      return
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-title-outlet-seo");
    }
    if ($param["page"]=="novidades"){
      if($allcats["categoria"]->categoria_titulopaginanovidades_s){
        return $allcats["categoria"]->categoria_titulopaginanovidades_s;
      }
      return
      $this->tag->texto("prefixo-title-novidades-seo"). " ".
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-title-novidades-seo");
 
    }
    if ($param["page"]=="loja"){
      return $allcats["parceiro"]->parceiro_titulopagina_s;
    }
    if ($param["page"]=="marca"){
      if ($allcats["marca"]->marcaseo_titulo_s){
        return $allcats["marca"]->marcaseo_titulo_s;
      }
 
      return $marca = end($allcats["breads"])["categoria"] ." ". $this->tag->texto("titulo-sufixo-seo");
    }
  }
  public function descPage($param,$allcats){
    if ($param["page"]=="busca"){
      return $this->tag->texto("description-busca-seo");
    }
    if ($param["page"]=="categoria"){
      if($allcats["categoria"]->categoria_descricaoseo_s){
        return $allcats["categoria"]->categoria_descricaoseo_s;
      }
 
      return
      $this->tag->texto("prefixo-description-categoria-seo") .
      " " .
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-description-categoria-seo");
    }
    if ($param["page"]=="outlet"){
      if($allcats["categoria"]->categoria_descricaoseooutlet_s){
        return $allcats["categoria"]->categoria_descricaoseooutlet_s;
      }
 
      return
      $this->tag->texto("prefixo-description-outlet-categorias-seo") .
      " " .
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-categorias-outlet-description-seo");
    }
    if ($param["page"]=="novidades"){
      if($allcats["categoria"]->categoria_descricaoseonovidades_s){
        return $allcats["categoria"]->categoria_descricaoseonovidades_s;
      }
 
      return
      $this->tag->texto("prefixo-description-novidades-seo") .
      " " .
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-description-novidades-seo");
 
    }
    if ($param["page"]=="loja"){
      if ($allcats["parceiro"]->parceiro_descricaoseo_t[0] && $allcats["parceiro"]->parceiro_descricaoseo_t[0] !== "#"){
        return $allcats["parceiro"]->parceiro_descricaoseo_t[0];
      }
 
      $loja = end($allcats["breads"])["categoria"];
 
      $ct=0;
      foreach($allcats["catloja"] as $key => $cats){
        if ($ct==0 || $ct==1){
          $ct++;
          continue;
        }
        $lojascats .= $key.", ";
 
        if($ct==6){
          break;
        }
 
        $ct++;
      }
 
      $lojascats = rtrim($lojascats,", ");
 
      $catprefix = "No iLovee você encontra o melhor da loja ".$loja." - ".$lojascats." e muito mais. Vem ver! ";
 
      return $catprefix;
    }
 
    if ($param["page"]=="marca"){
      if ($allcats["marca"]->marcaseo_description_t[0]){
        return $allcats["marca"]->marcaseo_description_t[0];
      }
 
      $marca = end($allcats["breads"])["categoria"];
 
      $ct=0;
      foreach($allcats["catmarca"] as $key => $cats){
        if ($ct==0 || $ct==1){
          $ct++;
          continue;
        }
        $marcascats .= $key.", ";
      }
 
      $marcascats = rtrim($marcascats,", ");
 
      $catprefix = "No iLovee você encontra o melhor da marca ".$marca." - ".$marcascats." e muito mais. Vem ver! ";
 
      return $catprefix;
    }
  }
 
  public function textVend($param,$allcats){
    if ($param["page"]=="busca"){
      return "iLovee | Busca: " . $param["termo"];
    }
    if ($param["page"]=="categoria"){
      return array("texto"=>$allcats["categoria"]->categoria_textovendedor_t[0],"titulo"=>$allcats["categoria"]->categoria_titulovendedor_s);
    }
    if ($param["page"]=="outlet"){
      return array("texto"=>$allcats["categoria"]->categoria_textovendedoroutlet_t[0],"titulo"=>$allcats["categoria"]->categoria_titulovendedor_s);
    }
    if ($param["page"]=="novidades"){
      return array("texto"=>$allcats["categoria"]->categoria_textovendedornovidades_t[0],"titulo"=>$allcats["categoria"]->categoria_titulovendedor_s);
    }
  }
}
#1Multiple\Frontend\Controllers\CategoriaController->headerlojamarca(Array(12), null)
/var/www/iLove2.0/apps/frontend/controllers/CategoriaController.php (36)
<?php
namespace Multiple\Frontend\Controllers;
 
use Phalcon\Mvc\Controller;
use Phalcon\Http\Request;
use Multiple\Frontend\Controllers\IndexController as IndexActions;
use Phalcon\Cache\Backend\File as BackFile;
use Phalcon\Cache\Frontend\Data as FrontData;
 
 
class CategoriaController extends Controller{
  public function indexAction(){
 
    $request = new Request;
 
    $query = $this->RouteCategoriaSeo($this->dispatcher);
 
    $this->view->page       = $this->dispatcher->getParam("page");
    $this->view->nomeseo     = $this->dispatcher->getParam("nomeseo");
    $this->view->numeropagina  = $request->getQuery("pagina");
 
    $this->view->newsDegubMode = (isset($_GET['newsdebug']))?true:false ;
    $parametros = $viewParametros = $this->parametrosProdutos($this->dispatcher,$request,$this->view->page,$query);
 
    $this->view->likes = array_filter(unserialize($this->cookies->get("likes")->getValue()));
    $this->view->categoria = $viewParametros['categoria'];
 
    $viewParametros['categoria'] = base64_encode($viewParametros['categoria']);
    $this->view->parametros = $viewParametros;
 
 
    $breads = $this->helper->categoria_bread($this->view->page,$parametros);
 
    $this->view->breads = $breads["breads"];
 
    $this->view->headerlojamarca = $this->headerlojamarca($parametros,$breads["parceiro"]);
 
    $this->view->allcatsbread = array_column($breads["allcats"],"seo");
 
    $this->view->tituloPage = $this->tituloPage($parametros,$breads);
 
    $this->view->descPage = $this->descPage($parametros,$breads);
 
    $this->view->textoVendedor = $this->textVend($parametros,$breads);
 
    $this->view->tituloCat = end($breads["breads"])["categoria"];
 
    $this->view->allInfoCat = $breads["categoria"];
 
    $this->view->categoria  = $parametros["categoria"];
 
    $this->view->debug      = $parametros["debug"];
 
    $frontCache = new FrontData([
      "lifetime" => 20000,
    ]);
 
    $cache = new BackFile($frontCache,[
      "cacheDir" => APPLICATION_PATH . "/cache/",
    ]);
 
    $cacheProdutos = $cache->get(base64_encode('PRODUTOS-'.md5($_SERVER['REQUEST_URI'])));
 
    if($cacheProdutos === null){
      $cacheProdutos = $this->produtos($parametros,$this->view->numeropagina);
      $cache->save(base64_encode('PRODUTOS-'.md5($_SERVER['REQUEST_URI'])), $cacheProdutos);
    }
 
    $cacheProdutos["filtros"] = $this->filtrosLateraisMarcasLojas($parametros);
 
    $this->view->produtos = $cacheProdutos;
 
    $this->view->ranges = $this->ranges($this->view->produtos["ranges"]);
 
    $this->view->qtdprod   = $this->helper->contagem($this->view->produtos["contagem"]);
 
    $this->view->lateralCats = $this->helper->getCategorias(
      'menu.categoria',
      'closeMenu',
      'menu-acordion menu-close',
      $this->view->categoria,
      $this->view->page,
      $parametros,
      $this->helper->contador($this->view->page,$parametros),
      $this->view->allcatsbread
    );
 
    //footer
      $this->view->dados = array (
      'novaslojasmarcas'     => $this->helper->footer(7),
      'footertopcategorias'  => $this->helper->footer(8),
      'footermarcas'      => $this->helper->footer(9),
      'footerlojas'      => $this->helper->footer(10)
    );
 
    if ($request->getQuery("debug")){
      $this->view->param = $this->view->produtos;
    }
    else{
      $this->view->param = $parametros;
    }
 
    $this->view->render("categoria",'index');
  }
 
  public function ranges($ranges){
    $rang = [];
    foreach($ranges as $key => $range){
      if ($range!=0){
        $rang[$key] =$range;
 
      }
    }
    return $rang;
  }
 
  public function headerlojamarca($params,$parceiro){
 
    if ($params["page"]=="marca"){
      $client = $this->helper->solrConnect('marcasseo');
      $query = new \SolrQuery();
      $query->setQuery('marcaseo_marcaseo_s:'.$params['marcas']);
      $query->addFilterQuery("marcaseo_status_i:1");
      $query->setRows(1);
      $response = $client->query($query)->getResponse();
      $headermarca = $response->response->docs;
      return $headermarca[0];
    }
    if ($params["page"]=="loja"){
      return $parceiro;
    }
    return false;
  }
 
 
  public function menuContent($parametros=false){
    return $parametros;
  }
 
  public function cores(){
    $client = $this->helper->solrConnect('cores');
    $request = new Request();
    $query = new \SolrQuery();
 
    $query->setQuery("*");
 
    $query->addFilterQuery("cor_status_i:1");
 
    $response = $client->query($query)->getResponse();
 
    $cores = $response->response->docs;
 
    return $cores;
  }
 
  public function RouteCategoriaSeo($dispatcher){
    $cat = [];
    $cat[] = $dispatcher->getParam("categoria");
    $cat[] = $dispatcher->getParam("categoria2");
    $cat[] = $dispatcher->getParam("categoria3");
    $cat[] = $dispatcher->getParam("categoria4");
 
    $cat = array_filter($cat);
 
    $query = implode("/",$cat);
 
    return $query;
  }
 
  public function produtos($parametros,$offset=false,$filtros=false){
 
    $client = $this->helper->solrConnect('produtosdisponiveis');
    $rows = 50;
    $request = new Request();
    $query = new \SolrQuery();
 
    if ($offset){
      $startpoint = $rows*$offset;
      $query->setStart($startpoint);
    }
 
    if(!$parametros["ordem"]){
      if ($parametros["page"]=="novidades"){
        $query->addSortField("score desc, produto_alteracao_dt",1);
      }else{
        $query->addSortField("score desc, random_".date("d"),0);
      }
    }else{
      $ordem = $parametros["ordem"];
      $ord = $this->lerOrdem($ordem);
      $query->addSortField("score desc,".$ord['campo'],$ord['ordem']);
    }
 
    if($parametros["page"]=="outlet"){
      $query->addFilterQuery("-produto_desconto_i:0");
    }
 
    if ($parametros["page"]=="busca"){
 
      if(!$parametros["termo"]){ return"{}";}
      $query->setQuery('"'.$parametros["termo"].'"');
    $query->addFilterQuery("(produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:*");
 
      $query->addFilterQuery('+produto_nome_poss:"'.$parametros["termo"].'"');
 
      //$query->addFilterQuery('-produto_nomeseo_s:"'.$slugified.'"');
    }
 
    if ($parametros['categoria']){
      $moduloNewsCategoria = (!$parametros["ordem"]) ? " AND produto_news_nomeseo_sm:". $parametros['categoria'] : " ";
      if ($parametros["page"]=="categoria" OR $parametros["page"]=="outlet" OR $parametros["page"]=="novidades"){
        $query->setQuery("((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:". $parametros['categoria'].$moduloNewsCategoria.") OR ((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:".$parametros['categoria'].")");
      }else{
        $query->addFilterQuery("produto_categoria_nomeseo_sm:(". $parametros["categoria"] . ")");
      }
    }
 
 
    $moduloNewsGeral  = (!$parametros["ordem"]) ? " AND produto_news_nomeseo_sm:*": " ";
    if ($parametros['marcas']){
 
      $marcas = str_replace(","," OR ",$parametros["marcas"]);
      $marcas = trim($marcas);
 
      if ($parametros["page"]=="marca"){
        $query->setQuery('((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:* AND produto_marcaseo_s:"'. $marcas.'"'.$moduloNewsGeral.') OR (produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:* AND produto_marcaseo_s:"'. $marcas.'"');
      }else{
        $marcaComplemento = '{!tag=marcas}produto_marcaseo_s:('. $marcas .')';
      }
    }
 
    if ($parametros['lojas']){
      $lojasArray = explode(",", $parametros['lojas']);
      $lojas = str_replace(","," OR ",$parametros["lojas"]);
      $lojas = trim($lojas);
      if ($parametros["page"]=="loja"){
        if(!$lojas){ return "";}
        $query->setQuery('((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:* AND parceiro_nomeseo_s:'. $lojas.$moduloNewsGeral.') OR (produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:* AND parceiro_nomeseo_s:"'. $lojas.'"');
      }else if(!is_numeric($lojas)){
        if(!$lojas){ return "";}
        $lojaComplemento = "";
        $i = 0;
        $c = count($lojasArray);
        foreach ($lojasArray as $lojaNome) {
          $lojaComplemento .= '{!tag=lojas}parceiro_nomeseo_s:'.$lojaNome.' OR ';  
        }
        $lojaComplemento = rtrim($lojaComplemento," OR ");
        
      }else{
        $lojaComplemento =  '{!tag=lojas}parceiro_nomeseo_s:* AND produto_parceiroid_i:'.$lojas;
      }
    }
 
    $marcaComplemento = ($marcaComplemento) ? $marcaComplemento : "*";
    $lojaComplemento = ($lojaComplemento) ? $lojaComplemento : "*";
 
    if($marcaComplemento !== "*" && $lojaComplemento == "*" ){
      $query->addFilterQuery($marcaComplemento);
    }
    else if($marcaComplemento == "*" && $lojaComplemento !== "*"){
      $query->addFilterQuery($lojaComplemento);
    }
    else if($marcaComplemento !== "*" && $lojaComplemento !== "*"){
      $query->addFilterQuery($marcaComplemento." OR ".$lojaComplemento);
    }
 
    if ($parametros['preco-max']){
      $query->addFilterQuery('produto_precofinal_f:[* TO '. $parametros["preco-max"]. ']');
    }
 
    if ($parametros['preco-min']){
      $query->addFilterQuery('produto_precofinal_f:['. $parametros["preco-min"]. ' TO *]');
    }
 
    if ($parametros['cores']){
 
      $cores = str_replace(","," OR ",$parametros["cores"]);
 
      $query->addFilterQuery('{!tag=cor}produto_corseo_sm:('. $cores . " )");
    }
 
    if ($parametros['desconto']){
      $query->addFilterQuery('{!tag=desc}produto_desconto_i:['. $parametros["desconto"]. ' TO *]');
 
    }
 
    if ($parametros['tamanhos']){
 
      $tamanhos = str_replace(","," OR ",$parametros["tamanhos"]);
 
      $query->addFilterQuery('{!tag=tamanho}produto_tamanhoseo_s:('. $tamanhos . ")");
    }
 
    if($parametros["excluirIds"]){
      foreach ($parametros["excluirIds"] as $id) {
        $query->addFilterQuery("-produto_id_i:".$id);
      }
    }
 
    $query->addFilterQuery("parceiro_status_i:1");
 
 
    $query->setGroup(true);
 
    $query->setGroupMain(true);
 
    $query->addGroupField("produto_groupid_s");
 
    $query->setRows($rows);
 
    $query->setFacet(true);
 
    $query->setFacetMinCount(1);
 
    $query->addFacetField('{!ex=marcas}produto_marcaseo_s')->
        addFacetField('{!ex=marcas}produto_marca_s')->
        addFacetField('produto_material_s')->
        // addFacetField('{!ex=tamanho}produto_tamanho_s')->
        // addFacetField('{!ex=tamanho}produto_tamanhoseo_s')->
        addFacetField('{!ex=lojas}parceiro_nomeseo_s')->
        addFacetField('{!ex=lojas}parceiro_nome_s')->
        // addFacetField('{!ex=cor}produto_cor_sm')->
        // addFacetField("{!ex=cor}produto_corseo_sm")->
        addFacetField("{!ex=desc}produto_desconto_i");
 
    $query->addParam("facet.interval","produto_desconto_i");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=20}[20,100]");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=40}[40,100]");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=70}[70,100]");
 
    // if($filtros){
    //   // $query->addParam("facet.pivot","{!ex=produto_tamanho_s key=tamanhos}produto_tamanho_s,produto_disponivel_i,produto_tamanhoseo_s");
    //   $query->addParam("facet.pivot","{!ex=produto_marca_s key=marcas}produto_marcaseo_s,produto_marca_s,produto_disponivel_i");
    //   $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=lojas}parceiro_nome_s,parceiro_nomeseo_s,produto_disponivel_i");
    //   // $query->addParam("facet.pivot","{!ex=produto_cor_sm key=cores}produto_cor_sm,produto_corseo_sm,produto_disponivel_i");
 
    // }else{
    //   // $query->addParam("facet.pivot","{!ex=produto_tamanho_s key=tamanhos}produto_tamanhoseo_s");
    //   $query->addParam("facet.pivot","{!ex=produto_marca_s key=marcas}produto_marcaseo_s");
    //   $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=lojas}parceiro_nomeseo_s");
    //   // $query->addParam("facet.pivot","{!ex=produto_cor_sm key=cores}produto_corseo_sm");
    // }
 
    $query->addParam("facet.pivot","{!ex=produto_marca_s key=marcas}produto_marcaseo_s");
     $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=lojas}parceiro_nomeseo_s");
 
     $query->addParam("facet.pivot","{!ex=produto_marca_s key=filtrosmarcas}produto_marcaseo_s,produto_marca_s,produto_disponivel_i");
    $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=filtroslojas}parceiro_nome_s,parceiro_nomeseo_s,produto_disponivel_i");
 
    $query->addParam("facet.limit","1000000");
    $query->addParam("facet.sort","index");
 
 
    $response = $client->query($query)->getResponse();
 
    if ($parametros['debug']){
      echo '<pre>';
      print_r($response);
      die;
    }
 
    if(!$filtros){
      $produtos["produtos"] = $response->response->docs;
      $produtos["facets"] = $response->facet_counts->facet_fields;
      $produtos["contagem"] = $response->response->numFound;
      $produtos["ranges"]  = $response->facet_counts->facet_intervals->produto_desconto_i;
    }
 
    //$produtos["filtros"] = $this->limpaFiltros($response->facet_counts->facet_pivot,$filtros);
 
    if (!$produtos){
      return array("Error"=>"Nenhuma Produto encontrado");
    }
    return $produtos;
  }
 
  public function filtrosLateraisMarcasLojas($parametros){
    $client = $this->helper->solrConnect('produtosdisponiveis');
    $rows = 50;
    $request = new Request();
    $query = new \SolrQuery();
 
    if($parametros["page"]=="outlet"){
      $query->addFilterQuery("-produto_desconto_i:0");
    }
 
    if($parametros["page"]=="busca"){
 
      if(!$parametros["termo"]){ return"{}";}
      $query->setQuery('"'.$parametros["termo"].'"');
      $query->addFilterQuery("(produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:*");
      $query->addFilterQuery('+produto_nome_poss:"'.$parametros["termo"].'"');
    }
 
    if ($parametros['categoria']){
      if ($parametros["page"]=="categoria" OR $parametros["page"]=="outlet" OR $parametros["page"]=="novidades"){
        $query->setQuery("((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:". $parametros['categoria']." AND produto_news_nomeseo_sm:". $parametros['categoria'].") OR ((produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:".$parametros['categoria'].")");
      }else{
        $query->addFilterQuery("produto_categoria_nomeseo_sm:(". $parametros["categoria"] . ")");
      }
    }
 
    if ($parametros['preco-max']){
      $query->addFilterQuery('produto_precofinal_f:[* TO '. $parametros["preco-max"]. ']');
    }
 
    if ($parametros['preco-min']){
      $query->addFilterQuery('produto_precofinal_f:['. $parametros["preco-min"]. ' TO *]');
    }
 
    if ($parametros['desconto']){
      $query->addFilterQuery('{!tag=desc}produto_desconto_i:['. $parametros["desconto"]. ' TO *]');
    }
 
    if($parametros["excluirIds"]){
      foreach ($parametros["excluirIds"] as $id) {
        $query->addFilterQuery("-produto_id_i:".$id);
      }
    }
 
    $query->addFilterQuery("parceiro_status_i:1");
    $query->setGroup(true);
    $query->setGroupMain(true);
    $query->addGroupField("produto_groupid_s");
    $query->setRows($rows);
    $query->setFacet(true);
    $query->setFacetMinCount(1);
 
    $query->addFacetField('{!ex=marcas}produto_marcaseo_s')->
        addFacetField('{!ex=marcas}produto_marca_s')->
        addFacetField('produto_material_s')->
        addFacetField('{!ex=lojas}parceiro_nomeseo_s')->
        addFacetField('{!ex=lojas}parceiro_nome_s')->
        addFacetField("{!ex=desc}produto_desconto_i");
 
    $query->addParam("facet.interval","produto_desconto_i");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=20}[20,100]");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=40}[40,100]");
    $query->addParam("f.produto_desconto_i.facet.interval.set","{!key=70}[70,100]");
 
    $query->addParam("facet.pivot","{!ex=produto_marca_s key=marcas}produto_marcaseo_s");
     $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=lojas}parceiro_nomeseo_s");
 
     $query->addParam("facet.pivot","{!ex=produto_marca_s key=filtrosmarcas}produto_marcaseo_s,produto_marca_s,produto_disponivel_i");
    $query->addParam("facet.pivot","{!ex=parceiro_nome_s key=filtroslojas}parceiro_nome_s,parceiro_nomeseo_s,produto_disponivel_i");
 
    $query->addParam("facet.limit","1000000");
    $query->addParam("facet.sort","index");
 
 
    $response = $client->query($query)->getResponse();
 
 
    $produtos["filtros"] = $response->facet_counts->facet_pivot;
 
    if (!$produtos){
      return array("Error"=>"Nenhuma Produto encontrado");
    }
    return $produtos["filtros"] = $response->facet_counts->facet_pivot;
 
  }
 
  public function buscaExata($parametros,$offset=false){
 
    $client = $this->helper->solrConnect('produtos');
    $rows = 50;
    $request = new Request();
    $query = new \SolrQuery();
 
    if($offset){
      $startpoint = $rows*$offset;
      $query->setStart($startpoint);
    }
 
    if(!$parametros["ordem"]){
      $query->addSortField("score desc, random_".date("d"),0);
    }else{
      $ordem = $parametros["ordem"];
      $ord = $this->lerOrdem($ordem);
      $query->addSortField("score desc,".$ord['campo'],$ord['ordem']);
    }
 
    if(!$parametros["termo"]){ return"{}";}
 
    //$slugified = $this->helper->slugify($parametros["termo"]);
    $query->setQuery('"'. $parametros["termo"] .'"');
 
    //$querySyntax =   '(produto_marcaseo_s:'.$slugified.'^8 OR parceiro_nomeseo_s:'.$slugified.'^7 OR produto_nomeseo_s:"'.$slugified.'"^6)';
 
//    $query->setQuery("((".$querySyntax." AND produto_news_nomeseo_sm:*) OR ".$querySyntax.")");
 
    $query->addFilterQuery("(produto_imagem_linkexterno_sm:* OR produto_imagem_link_sm:* ) AND produto_disponivel_i:1 AND produto_categoria_nomeseo_sm:*");
 
    if ($parametros['categoria']){
      $query->addFilterQuery("produto_categoria_nomeseo_sm:(". $parametros["categoria"] . ")");
    }
 
    if ($parametros['marcas']){
 
      $marcas = str_replace(","," OR ",$parametros["marcas"]);
      $marcas = trim($marcas);
 
      $query->addFilterQuery('{!tag=marcas}produto_marcaseo_s:("'. $marcas . '")');
    }
 
    if ($parametros['lojas']){
 
      $lojas = str_replace(","," OR ",$parametros["lojas"]);
      $lojas = trim($lojas);
      if(!$lojas){ return "";}
 
      $query->addFilterQuery('{!tag=lojas}parceiro_nomeseo_s:("'. $lojas . '")');
    }
 
 
    if ($parametros['preco-max']){
      $query->addFilterQuery('produto_precofinal_f:[* TO '. $parametros["preco-max"]. ']');
    }
 
    if ($parametros['preco-min']){
      $query->addFilterQuery('produto_precofinal_f:['. $parametros["preco-min"]. ' TO *]');
    }
 
    if ($parametros['desconto']){
      $query->addFilterQuery('{!tag=desc}produto_desconto_i:['. $parametros["desconto"]. ' TO *]');
 
    }
 
    $query->addFilterQuery("parceiro_status_i:1");
 
    $query->setGroup(true);
 
    $query->setGroupMain(true);
 
    $query->addGroupField("produto_groupid_s");
 
    $query->setRows($rows);
 
 
    $response = $client->query($query)->getResponse();
 
    $produtos["produtos"] = $response->response->docs;
    $produtos["contagem"] = $response->response->numFound;
 
    if (!$produtos){
      return array("Error"=>"Nenhuma Produto encontrado");
    }
    return $produtos;
  }
  public function limpaFiltros($lista,$return = false){
    if($return){
      return $lista;
    }
 
    foreach ($lista as $filtro => $valores) {
      foreach ($valores as $i => $filtroItem) {
        $lista->$filtro[$i] = $filtroItem->value ;
      }
    }
    return $lista;
  }
 
  public function parametrosProdutos($routeParams,$requestParams,$page,$query){
 
    $parametros["page"]       = $page;
    $parametros["marcas"]       = $routeParams->getParam("marcas") ? $routeParams->getParam("marcas") : $requestParams->getQuery("marcas");
    $parametros["lojas"]       = $routeParams->getParam("lojas") ? $routeParams->getParam("lojas") : $requestParams->getQuery("lojas");
    $parametros["categoria"]   = $query ? $query : $requestParams->getQuery("categoria");
    $parametros["preco-min"]  = $requestParams->getQuery("preco-min");
    $parametros["preco-max"]   = $requestParams->getQuery("preco-max");
    $parametros["ordem"]       = $requestParams->getQuery("ordem");
    $parametros["cores"]       = $requestParams->getQuery("cores");
    $parametros["tamanhos"]   = $requestParams->getQuery("tamanhos");
    $parametros["materiais"]   = $requestParams->getQuery("materiais");
    $parametros["desconto"]   = $requestParams->getQuery("desconto");
    $parametros["debug"]       = $requestParams->getQuery("debug");
    $page == "busca" ? $parametros["termo"] = $routeParams->getParam("termo") : "";
 
    return $parametros;
  }
 
  public function lerOrdem($ordem){
    switch ($ordem) {
        case "menor-preco":
            return array("campo"=>"produto_precofinal_f","ordem"=> 0 );
            break;
        case "maior-preco":
            return array("campo"=>"produto_precofinal_f","ordem"=> 1 );
            break;
        case "mais-novos": // Cadastro mais novos
            return array("campo"=>"produto_cadastro_dt","ordem"=> 1 );
            break;
        case "descontos":
            return array("campo"=>"produto_desconto_i","ordem"=> 1 );
            break;
        case "mais-curtidos":
            return array("campo"=>"produto_likes_i","ordem"=> 1 );
            break;
        case "mais-vendidos":
            return array("campo"=>"produto_views_i","ordem"=> 1 );
            break;
        default:
          return false;
    }
  }
  public function AgrupaNomeComSEO($array1,$array2){
 
      $newArray=[];
 
      foreach ($array2 as $key=> $seo){
        $newArray["grupo"][$key]['count'] = $seo;
        $newArray["grupo"][$key]['name'] = $this->helper->slugify($key);
        $newArray["chaves"][$newArray["grupo"][$key]['name']]=$key;
      }
      return $newArray;
  }
 
  public function apiProdutos($produtos,$likes, $erro=false,$parametros=false,$offset=false,$path=false){
 
    $prods = $this->view->getPartial("modulos/lista",[
      "exato"=> $produtos['exato'] ,
      "lista"=> $produtos['produtos'] ,
      "class"=>"produto",
      "itemClass"=>"",
      "bloco"=>"produto/produto",
      "likes" => $likes,
      "banners" => true,
      "path" => $path,
      "qtdprod" => $produtos['contagem'],
      "erro" => $erro,
      "parametros" => $parametros,
      "paginacao"  => $offset,
      "path" => $path
    ]);
 
    return $prods;
  }
 
  public function apiCores($parametros){
    $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"], 'debug'=> 0 ],0, true);
    $produtos   = $this->produtos($parametros,1);
    $cores = $this->view->getPartial("filtros/cores",["param_cores"=>$parametros, "filtros" =>$filtros, "produtos"=>$produtos]);
 
    return $cores;
  }
  public function apiDescontos($produtos,$parametros){
    $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"]],1, true)['filtros'];
    $produtos   = $this->produtos($parametros,1);
 
    $descontos = $this->view->getPartial("filtros/descontos",['ranges'=>$this->ranges($produtos["ranges"]),"param_desconto"=>$parametros, "filtros" =>$filtros, "produtos"=>$produtos]);
 
    return $descontos;
  }
  public function apiTamanhos($produtos,$parametros){
    $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"] ],1, true)['filtros'];
    $produtos   = $this->produtos($parametros,1);
 
    $tamanhos = $this->view->getPartial("filtros/tamanhos",['tamanhos'=>$produtos,"param_tamanhos"=>$parametros, "filtros" =>$filtros, "produtos"=>$produtos]);
 
    return $tamanhos;
  }
  public function apiMarcas($filtro,$parametros){
    // $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"] ],1, true)['filtros'];
    // $produtos   = $this->produtos($parametros,1);
    // $parametros["marcas"] = explode(",",$parametros["marcas"]);
 
    // $marcas = $this->view->getPartial("filtros/marcas",["param_marcas"=>$parametros["marcas"], "produtos_filtros" => $filtro]);
 
    // return $marcas;
    return false;
  }
  public function apiLojas($filtro,$parametros){
    // $filtros   = $this->produtos([ "categoria" => $parametros["categoria"], "page" => $parametros["page"] ],1, true)['filtros'];
    // $produtos   = $this->produtos($parametros,1);
    // $parametros["lojas"] = explode(",",$parametros["lojas"]);
 
    // $lojas = $this->view->getPartial("filtros/lojas",["param_lojas"=>$parametros["lojas"], "produtos_filtros"=>$filtro]);
 
    // return $lojas;
    return false;
  }
  public function apiPrecos($parametros){
    $precos = $this->view->getPartial("filtros/precos",["preco_min"=>$parametros["preco-min"],"preco_max"=>$parametros["preco-max"]]);
 
    return $precos;
  }
 
  public function tituloPage($param,$allcats){
    if ($param["page"]=="busca"){
      return $this->tag->texto("titulo-busca-seo") . " " . $this->tag->texto("titulo-sufixo-seo");
    }
    if ($param["page"]=="categoria"){
      if ($allcats["categoria"]->categoria_titulopagina_s){
        return $allcats["categoria"]->categoria_titulopagina_s;
      }
 
      return $allcats["categoria"]->categoria_nome_s . " " . $this->tag->texto("sufixo-titulo-categoria-seo");
    }
    if ($param["page"]=="outlet"){
      if ($allcats["categoria"]->categoria_titulopaginaoutlet_s){
        return $allcats["categoria"]->categoria_titulopaginaoutlet_s;
      }
 
      return
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-title-outlet-seo");
    }
    if ($param["page"]=="novidades"){
      if($allcats["categoria"]->categoria_titulopaginanovidades_s){
        return $allcats["categoria"]->categoria_titulopaginanovidades_s;
      }
      return
      $this->tag->texto("prefixo-title-novidades-seo"). " ".
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-title-novidades-seo");
 
    }
    if ($param["page"]=="loja"){
      return $allcats["parceiro"]->parceiro_titulopagina_s;
    }
    if ($param["page"]=="marca"){
      if ($allcats["marca"]->marcaseo_titulo_s){
        return $allcats["marca"]->marcaseo_titulo_s;
      }
 
      return $marca = end($allcats["breads"])["categoria"] ." ". $this->tag->texto("titulo-sufixo-seo");
    }
  }
  public function descPage($param,$allcats){
    if ($param["page"]=="busca"){
      return $this->tag->texto("description-busca-seo");
    }
    if ($param["page"]=="categoria"){
      if($allcats["categoria"]->categoria_descricaoseo_s){
        return $allcats["categoria"]->categoria_descricaoseo_s;
      }
 
      return
      $this->tag->texto("prefixo-description-categoria-seo") .
      " " .
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-description-categoria-seo");
    }
    if ($param["page"]=="outlet"){
      if($allcats["categoria"]->categoria_descricaoseooutlet_s){
        return $allcats["categoria"]->categoria_descricaoseooutlet_s;
      }
 
      return
      $this->tag->texto("prefixo-description-outlet-categorias-seo") .
      " " .
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-categorias-outlet-description-seo");
    }
    if ($param["page"]=="novidades"){
      if($allcats["categoria"]->categoria_descricaoseonovidades_s){
        return $allcats["categoria"]->categoria_descricaoseonovidades_s;
      }
 
      return
      $this->tag->texto("prefixo-description-novidades-seo") .
      " " .
      $allcats["categoria"]->categoria_nome_s .
      " " .
      $this->tag->texto("sufixo-description-novidades-seo");
 
    }
    if ($param["page"]=="loja"){
      if ($allcats["parceiro"]->parceiro_descricaoseo_t[0] && $allcats["parceiro"]->parceiro_descricaoseo_t[0] !== "#"){
        return $allcats["parceiro"]->parceiro_descricaoseo_t[0];
      }
 
      $loja = end($allcats["breads"])["categoria"];
 
      $ct=0;
      foreach($allcats["catloja"] as $key => $cats){
        if ($ct==0 || $ct==1){
          $ct++;
          continue;
        }
        $lojascats .= $key.", ";
 
        if($ct==6){
          break;
        }
 
        $ct++;
      }
 
      $lojascats = rtrim($lojascats,", ");
 
      $catprefix = "No iLovee você encontra o melhor da loja ".$loja." - ".$lojascats." e muito mais. Vem ver! ";
 
      return $catprefix;
    }
 
    if ($param["page"]=="marca"){
      if ($allcats["marca"]->marcaseo_description_t[0]){
        return $allcats["marca"]->marcaseo_description_t[0];
      }
 
      $marca = end($allcats["breads"])["categoria"];
 
      $ct=0;
      foreach($allcats["catmarca"] as $key => $cats){
        if ($ct==0 || $ct==1){
          $ct++;
          continue;
        }
        $marcascats .= $key.", ";
      }
 
      $marcascats = rtrim($marcascats,", ");
 
      $catprefix = "No iLovee você encontra o melhor da marca ".$marca." - ".$marcascats." e muito mais. Vem ver! ";
 
      return $catprefix;
    }
  }
 
  public function textVend($param,$allcats){
    if ($param["page"]=="busca"){
      return "iLovee | Busca: " . $param["termo"];
    }
    if ($param["page"]=="categoria"){
      return array("texto"=>$allcats["categoria"]->categoria_textovendedor_t[0],"titulo"=>$allcats["categoria"]->categoria_titulovendedor_s);
    }
    if ($param["page"]=="outlet"){
      return array("texto"=>$allcats["categoria"]->categoria_textovendedoroutlet_t[0],"titulo"=>$allcats["categoria"]->categoria_titulovendedor_s);
    }
    if ($param["page"]=="novidades"){
      return array("texto"=>$allcats["categoria"]->categoria_textovendedornovidades_t[0],"titulo"=>$allcats["categoria"]->categoria_titulovendedor_s);
    }
  }
}
#2Multiple\Frontend\Controllers\CategoriaController->indexAction(marca, marca, -2essential)
#3Phalcon\Dispatcher->callActionMethod(Object(Multiple\Frontend\Controllers\CategoriaController), indexAction, Array([page] => marca, [nomeseo] => marca, [marcas] => -2essential))
#4Phalcon\Dispatcher->_dispatch()
#5Phalcon\Dispatcher->dispatch()
#6Phalcon\Mvc\Application->handle()
/var/www/iLove2.0/public/index.php (456)
<?php
 
error_reporting(E_ALL);
//
$debug = new \Phalcon\Debug();
$debug->listen();
 
use Phalcon\Loader;
use Phalcon\Mvc\Router;
use Phalcon\DI\FactoryDefault;
use Phalcon\Mvc\Application as BaseApplication;
 
define('APPLICATION_PATH', __DIR__ . '/../apps');
define('PUBLIC_PATH', __DIR__ );
define('XML_FOLDER', PUBLIC_PATH . '/xml/');
define('LOGS_FOLDER', __DIR__ . '/../logs/');
define('IMAGES_FOLDER', __DIR__ . '/images/');
define('SOLRADDR', "localhost");
 
ini_set('memory_limit','4000M');
 
date_default_timezone_set('America/Sao_Paulo');
 
class Application extends BaseApplication
{
    /**
     * Register the services here to make them general or register in the ModuleDefinition to make them module-specific
     */
    protected function registerServices()
    {
 
        $di = new FactoryDefault();
 
        $loader = new Loader();
 
        /**
         * We're a registering a set of directories taken from the configuration file
         */
 
        $loader->registerNamespaces(
            [
               "Cocur\Slugify"    => APPLICATION_PATH . "/../vendor/slugify/src"
 
            ]
        );
 
        $loader
            ->registerDirs([__DIR__ . '/../apps/helpers/',__DIR__ . '/../apps/security/'])
            ->register();
 
        require_once APPLICATION_PATH . '/../vendor/autoload.php';
 
 
 
        // Registering a router
        $di->set('router', function () {
 
            $router = new Router(false);
 
            $router->setDefaultModule("frontend");
 
            $router->notFound(array(
              'module' => 'frontend',
              "controller" => "notfound",
              "action" => "index",
              "page"  => "404"
            ));
 
 
            //DEFAULT FRONTEND ROUTES
            // $router->add('/:controller/:action', [
            //     'module'     => 'frontend',
            //     'controller' => 1,
            //     'action'     => 2,
            // ])->setName('frontend');
 
 
            $router->add("/produto/{loja:[a-z0-9\-]+}/{marca:[a-z0-9\-]+}/{nome:[a-z0-9\-]+}/{id:[a-z0-9\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "produto",
                "page"       => "produto",
                "nomeseo"    => "produto"
            ]);
 
            $router->add("/produto/{nome:[a-z0-9\-]+}/{id:[a-z0-9\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "produto",
                "page"       => "produto",
                "nomeseo"    => "produto"
            ]);
 
            $router->add("/categoria/{categoria:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "categoria",
                "nomeseo"    => "categoria",
                "pagina"     => "0"
            ]);
 
            $router->add("/categoria/{categoria:[a-z\-]+}/{categoria2:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "categoria",
                "nomeseo"    => "categoria"
            ]);
 
            $router->add("/categoria/{categoria:[a-z\-_]+}/{categoria2:[a-z\-_]+}/{categoria3:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "categoria",
                "nomeseo"    => "categoria"
            ]);
 
            $router->add("/categoria/{categoria:[a-z\-_]+}/{categoria2:[a-z\-_]+}/{categoria3:[a-z\-_]+}/{categoria4:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "categoria",
                "nomeseo"    => "categoria"
            ]);
 
            $router->add("/outlet/{categoria:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "outlet",
                "nomeseo"    => "outlet",
                "pagina"     => "0"
            ]);
 
            $router->add("/outlet/{categoria:[a-z\-_]+}/{categoria2:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "outlet",
                "nomeseo"    => "outlet"
            ]);
 
            $router->add("/outlet/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}/{categoria3:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "outlet",
                "nomeseo"    => "outlet"
            ]);
 
            $router->add("/outlet/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}/{categoria3:[a-z\-]+}/{categoria4:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "outlet",
                "nomeseo"    => "outlet"
            ]);
 
            $router->add("/novidades/{categoria:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "novidades",
                "nomeseo"    => "novidades",
                "pagina"     => "0"
            ]);
 
            $router->add("/novidades/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "novidades",
                "nomeseo"    => "novidades"
            ]);
 
            $router->add("/novidades/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}/{categoria3:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "novidades",
                "nomeseo"    => "novidades"
            ]);
 
            $router->add("/novidades/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}/{categoria3:[a-z\-]+}/{categoria4:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "novidades",
                "nomeseo"    => "novidades"
            ]);
 
            $router->add("/loja/{loja}",[
                "module"     => "frontend",
                "controller" => "categoria",
                "action"     => "index",
                "page"       => "loja",
                "nomeseo"    => "loja",
                "lojas"      => 1,
                "pagina"     => "0",
 
            ])->setName("frontend-loja");
 
            $router->add("/loja/{loja}/{pagina}",[
                "module"     => "frontend",
                "controller" => "categoria",
                "action"     => "index",
                "page"       => "loja",
                "nomeseo"    => "loja",
                "lojas"      => 1,
                "pagina"     => 2,
 
            ])->setName("frontend-loja-pagina");
 
 
            $router->add("/",[
                "module"     => "frontend",
                "controller" => "index",
                "action"     => "index",
                "page"       => "home",
                "nomeseo"    => "home"
            ])->setName("frontend-home");
 
            $router->add("/([a-z0-9\-]+)",[
                "module"     => "frontend",
                "controller" => "categoria",
                "action"     => "index",
                "page"       => "marca",
                "nomeseo"    => "marca",
                "marcas"  => 1
            ])->setName("frontend-marca");
 
 
            $router->add("/busca",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "busca",
                "page"       => "busca",
                "nomeseo"    => "busca",
                "pagina"     => "0",
            ]);
 
             $router->add("/buscaFoward",[
                "action"     => "buscaFoward",
                "module"     => "frontend",
                "controller" => "busca",
                "page"       => "busca",
                "nomeseo"    => "busca",
                "pagina"     => "0",
            ]);
 
            $router->add("/sobre-nos",[
                "module"     => "frontend",
                "controller" => "welcome",
                "action"     => "index",
            ])->setName("frontend-home");
 
            $router->add("/not-found",[
                "module"     => "frontend",
                "controller" => "Notfound",
                "action"     => "index",
            ])->setName("frontend-notFound");
 
            $router->add("/marcas",[
                "module"     => "frontend",
                "controller" => "lojasmarcas",
                "action"     => "index",
                "page"       => "marcas",
                "nomeseo"    => "marcas"
            ])->setName("frontend-marcas");
 
            $router->add("/lojas",[
                "module"     => "frontend",
                "controller" => "lojasmarcas",
                "action"     => "index",
                "page"       => "lojas",
                "nomeseo"    => "lojas"
            ])->setName("frontend-lojas");
 
            $router->add("/cupom",[
                "module"     => "frontend",
                "controller" => "Cupom",
                "action"     => "index",
                "page"       => "cupons",
            ])->setName("frontend-cupom");
 
            $router->add("/cupom/{parceiro}",[
                "module"     => "frontend",
                "controller" => "Cupom",
                "action"     => "interno",
                "parceiro"   => 1,
                "page"       => "cupom",
            ])->setName("frontend-cupom-interno");
 
            $router->add("/vitrine/{slug}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "vitrine",
                "nomeseo"    => "vitrine",
                "tipo"       => 1,
                "slug"       => 2
            ]);
 
            $router->add("/materia/{slug}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "materia",
                "nomeseo"    => "materia",
                "tipo"       => 1,
                "slug"       => 2
            ]);
 
            $router->add("/looks",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "looks",
                "nomeseo"    => "looks",
                "pagina"     => "0"
            ]);
 
            $router->add("/materias",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "materias",
                "nomeseo"    => "materias",
                "pagina"     => "0"
            ]);
 
            $router->add("/vitrines",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "vitrines",
                "nomeseo"    => "vitrines",
                "pagina"     => "0"
            ]);
 
            $router->add("/moods",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "moods",
                "nomeseo"    => "moods",
                "pagina"     => "0"
            ]);
 
             $router->add("/look/{slug}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "look",
                "nomeseo"    => "look",
                "tipo"       => 1,
                "slug"       => 2
            ]);
 
             $router->add("/mood/{slug}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "mood",
                "nomeseo"    => "mood",
                "tipo"       => 1,
                "slug"       => 2
            ]);
 
            $router->add("/termos-de-uso",[
                "module"     => "frontend",
                "controller" => "politicas",
                "action"     => "index",
                "parceiro"   => 1
            ])->setName("frontend-cupom-interno");
 
            $router->add("/tags",[
                "module"     => "frontend",
                "controller" => "tags",
                "action"     => "index",
                "page"       => "tags",
                "nomeseo"    => "tags"
            ])->setName("frontend-tags");
 
 
            //API ROUTES
            $router->add("/api/:controller/:action/:params", [
                'module'     => 'api',
                'controller' => 1,
                'action'     => 2,
                'params'     => 3,
            ])->setName('api');
 
            $router->add("/api/:controller", [
                'module'     => 'api',
                'controller' => 1,
                'action'     => 'index',
            ])->setName('api');
 
            $router->add("/api", [
                'module'     => 'api',
                'controller' => 'index',
                'action'     => 'index',
            ])->setName('api');
 
 
            //BACKEND ROUTES
            $router->add("/backend/:controller/:action/:params", [
                'module'     => 'backend',
                'controller' => 1,
                'action'     => 2,
                'params'     => 3
            ])->setName('backend');
 
            $router->add("/backend/:controller", [
                'module'     => 'backend',
                'controller' => 1,
                'action'     => 'index',
 
            ])->setName('backend');
 
            $router->add("/backend", [
                'module'     => 'backend',
                'controller' => 'index',
                'action'     => 'index',
            ])->setName('backend');
 
            return $router;
        });
 
        $this->setDI($di);
    }
 
    public function main()
    {
 
        $this->registerServices();
 
        // Register the installed modules
        $this->registerModules([
            'frontend' => [
                'className' => 'Multiple\Frontend\Module',
                'path'      => '../apps/frontend/Module.php'
            ],
            'backend'  => [
                'className' => 'Multiple\Backend\Module',
                'path'      => '../apps/backend/Module.php'
            ],
            'api'  => [
                'className' => 'Multiple\api\Module',
                'path'      => '../apps/api/Module.php'
            ]
        ]);
 
        echo $this->handle()->getContent();
    }
}
 
$application = new Application();
$application->main();
#7Application->main()
/var/www/iLove2.0/public/index.php (461)
<?php
 
error_reporting(E_ALL);
//
$debug = new \Phalcon\Debug();
$debug->listen();
 
use Phalcon\Loader;
use Phalcon\Mvc\Router;
use Phalcon\DI\FactoryDefault;
use Phalcon\Mvc\Application as BaseApplication;
 
define('APPLICATION_PATH', __DIR__ . '/../apps');
define('PUBLIC_PATH', __DIR__ );
define('XML_FOLDER', PUBLIC_PATH . '/xml/');
define('LOGS_FOLDER', __DIR__ . '/../logs/');
define('IMAGES_FOLDER', __DIR__ . '/images/');
define('SOLRADDR', "localhost");
 
ini_set('memory_limit','4000M');
 
date_default_timezone_set('America/Sao_Paulo');
 
class Application extends BaseApplication
{
    /**
     * Register the services here to make them general or register in the ModuleDefinition to make them module-specific
     */
    protected function registerServices()
    {
 
        $di = new FactoryDefault();
 
        $loader = new Loader();
 
        /**
         * We're a registering a set of directories taken from the configuration file
         */
 
        $loader->registerNamespaces(
            [
               "Cocur\Slugify"    => APPLICATION_PATH . "/../vendor/slugify/src"
 
            ]
        );
 
        $loader
            ->registerDirs([__DIR__ . '/../apps/helpers/',__DIR__ . '/../apps/security/'])
            ->register();
 
        require_once APPLICATION_PATH . '/../vendor/autoload.php';
 
 
 
        // Registering a router
        $di->set('router', function () {
 
            $router = new Router(false);
 
            $router->setDefaultModule("frontend");
 
            $router->notFound(array(
              'module' => 'frontend',
              "controller" => "notfound",
              "action" => "index",
              "page"  => "404"
            ));
 
 
            //DEFAULT FRONTEND ROUTES
            // $router->add('/:controller/:action', [
            //     'module'     => 'frontend',
            //     'controller' => 1,
            //     'action'     => 2,
            // ])->setName('frontend');
 
 
            $router->add("/produto/{loja:[a-z0-9\-]+}/{marca:[a-z0-9\-]+}/{nome:[a-z0-9\-]+}/{id:[a-z0-9\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "produto",
                "page"       => "produto",
                "nomeseo"    => "produto"
            ]);
 
            $router->add("/produto/{nome:[a-z0-9\-]+}/{id:[a-z0-9\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "produto",
                "page"       => "produto",
                "nomeseo"    => "produto"
            ]);
 
            $router->add("/categoria/{categoria:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "categoria",
                "nomeseo"    => "categoria",
                "pagina"     => "0"
            ]);
 
            $router->add("/categoria/{categoria:[a-z\-]+}/{categoria2:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "categoria",
                "nomeseo"    => "categoria"
            ]);
 
            $router->add("/categoria/{categoria:[a-z\-_]+}/{categoria2:[a-z\-_]+}/{categoria3:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "categoria",
                "nomeseo"    => "categoria"
            ]);
 
            $router->add("/categoria/{categoria:[a-z\-_]+}/{categoria2:[a-z\-_]+}/{categoria3:[a-z\-_]+}/{categoria4:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "categoria",
                "nomeseo"    => "categoria"
            ]);
 
            $router->add("/outlet/{categoria:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "outlet",
                "nomeseo"    => "outlet",
                "pagina"     => "0"
            ]);
 
            $router->add("/outlet/{categoria:[a-z\-_]+}/{categoria2:[a-z\-_]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "outlet",
                "nomeseo"    => "outlet"
            ]);
 
            $router->add("/outlet/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}/{categoria3:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "outlet",
                "nomeseo"    => "outlet"
            ]);
 
            $router->add("/outlet/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}/{categoria3:[a-z\-]+}/{categoria4:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "outlet",
                "nomeseo"    => "outlet"
            ]);
 
            $router->add("/novidades/{categoria:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "novidades",
                "nomeseo"    => "novidades",
                "pagina"     => "0"
            ]);
 
            $router->add("/novidades/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "novidades",
                "nomeseo"    => "novidades"
            ]);
 
            $router->add("/novidades/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}/{categoria3:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "novidades",
                "nomeseo"    => "novidades"
            ]);
 
            $router->add("/novidades/{categoria:[a-z\-]+}/{categoria2:[a-z\-]+}/{categoria3:[a-z\-]+}/{categoria4:[a-z\-]+}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "categoria",
                "page"       => "novidades",
                "nomeseo"    => "novidades"
            ]);
 
            $router->add("/loja/{loja}",[
                "module"     => "frontend",
                "controller" => "categoria",
                "action"     => "index",
                "page"       => "loja",
                "nomeseo"    => "loja",
                "lojas"      => 1,
                "pagina"     => "0",
 
            ])->setName("frontend-loja");
 
            $router->add("/loja/{loja}/{pagina}",[
                "module"     => "frontend",
                "controller" => "categoria",
                "action"     => "index",
                "page"       => "loja",
                "nomeseo"    => "loja",
                "lojas"      => 1,
                "pagina"     => 2,
 
            ])->setName("frontend-loja-pagina");
 
 
            $router->add("/",[
                "module"     => "frontend",
                "controller" => "index",
                "action"     => "index",
                "page"       => "home",
                "nomeseo"    => "home"
            ])->setName("frontend-home");
 
            $router->add("/([a-z0-9\-]+)",[
                "module"     => "frontend",
                "controller" => "categoria",
                "action"     => "index",
                "page"       => "marca",
                "nomeseo"    => "marca",
                "marcas"  => 1
            ])->setName("frontend-marca");
 
 
            $router->add("/busca",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "busca",
                "page"       => "busca",
                "nomeseo"    => "busca",
                "pagina"     => "0",
            ]);
 
             $router->add("/buscaFoward",[
                "action"     => "buscaFoward",
                "module"     => "frontend",
                "controller" => "busca",
                "page"       => "busca",
                "nomeseo"    => "busca",
                "pagina"     => "0",
            ]);
 
            $router->add("/sobre-nos",[
                "module"     => "frontend",
                "controller" => "welcome",
                "action"     => "index",
            ])->setName("frontend-home");
 
            $router->add("/not-found",[
                "module"     => "frontend",
                "controller" => "Notfound",
                "action"     => "index",
            ])->setName("frontend-notFound");
 
            $router->add("/marcas",[
                "module"     => "frontend",
                "controller" => "lojasmarcas",
                "action"     => "index",
                "page"       => "marcas",
                "nomeseo"    => "marcas"
            ])->setName("frontend-marcas");
 
            $router->add("/lojas",[
                "module"     => "frontend",
                "controller" => "lojasmarcas",
                "action"     => "index",
                "page"       => "lojas",
                "nomeseo"    => "lojas"
            ])->setName("frontend-lojas");
 
            $router->add("/cupom",[
                "module"     => "frontend",
                "controller" => "Cupom",
                "action"     => "index",
                "page"       => "cupons",
            ])->setName("frontend-cupom");
 
            $router->add("/cupom/{parceiro}",[
                "module"     => "frontend",
                "controller" => "Cupom",
                "action"     => "interno",
                "parceiro"   => 1,
                "page"       => "cupom",
            ])->setName("frontend-cupom-interno");
 
            $router->add("/vitrine/{slug}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "vitrine",
                "nomeseo"    => "vitrine",
                "tipo"       => 1,
                "slug"       => 2
            ]);
 
            $router->add("/materia/{slug}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "materia",
                "nomeseo"    => "materia",
                "tipo"       => 1,
                "slug"       => 2
            ]);
 
            $router->add("/looks",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "looks",
                "nomeseo"    => "looks",
                "pagina"     => "0"
            ]);
 
            $router->add("/materias",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "materias",
                "nomeseo"    => "materias",
                "pagina"     => "0"
            ]);
 
            $router->add("/vitrines",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "vitrines",
                "nomeseo"    => "vitrines",
                "pagina"     => "0"
            ]);
 
            $router->add("/moods",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "moods",
                "nomeseo"    => "moods",
                "pagina"     => "0"
            ]);
 
             $router->add("/look/{slug}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "look",
                "nomeseo"    => "look",
                "tipo"       => 1,
                "slug"       => 2
            ]);
 
             $router->add("/mood/{slug}",[
                "action"     => "index",
                "module"     => "frontend",
                "controller" => "conteudo",
                "page"       => "mood",
                "nomeseo"    => "mood",
                "tipo"       => 1,
                "slug"       => 2
            ]);
 
            $router->add("/termos-de-uso",[
                "module"     => "frontend",
                "controller" => "politicas",
                "action"     => "index",
                "parceiro"   => 1
            ])->setName("frontend-cupom-interno");
 
            $router->add("/tags",[
                "module"     => "frontend",
                "controller" => "tags",
                "action"     => "index",
                "page"       => "tags",
                "nomeseo"    => "tags"
            ])->setName("frontend-tags");
 
 
            //API ROUTES
            $router->add("/api/:controller/:action/:params", [
                'module'     => 'api',
                'controller' => 1,
                'action'     => 2,
                'params'     => 3,
            ])->setName('api');
 
            $router->add("/api/:controller", [
                'module'     => 'api',
                'controller' => 1,
                'action'     => 'index',
            ])->setName('api');
 
            $router->add("/api", [
                'module'     => 'api',
                'controller' => 'index',
                'action'     => 'index',
            ])->setName('api');
 
 
            //BACKEND ROUTES
            $router->add("/backend/:controller/:action/:params", [
                'module'     => 'backend',
                'controller' => 1,
                'action'     => 2,
                'params'     => 3
            ])->setName('backend');
 
            $router->add("/backend/:controller", [
                'module'     => 'backend',
                'controller' => 1,
                'action'     => 'index',
 
            ])->setName('backend');
 
            $router->add("/backend", [
                'module'     => 'backend',
                'controller' => 'index',
                'action'     => 'index',
            ])->setName('backend');
 
            return $router;
        });
 
        $this->setDI($di);
    }
 
    public function main()
    {
 
        $this->registerServices();
 
        // Register the installed modules
        $this->registerModules([
            'frontend' => [
                'className' => 'Multiple\Frontend\Module',
                'path'      => '../apps/frontend/Module.php'
            ],
            'backend'  => [
                'className' => 'Multiple\Backend\Module',
                'path'      => '../apps/backend/Module.php'
            ],
            'api'  => [
                'className' => 'Multiple\api\Module',
                'path'      => '../apps/api/Module.php'
            ]
        ]);
 
        echo $this->handle()->getContent();
    }
}
 
$application = new Application();
$application->main();
KeyValue
_url/-2essential
KeyValue
REDIRECT_UNIQUE_IDWmf@gKJvtOBU0y9DufHQdwAAACM
REDIRECT_STATUS200
UNIQUE_IDWmf@gKJvtOBU0y9DufHQdwAAACM
HTTP_HOSTwww.ilovee.com.br
HTTP_ACCEPT_ENCODINGx-gzip, gzip, deflate
HTTP_USER_AGENTCCBot/2.0 (http://commoncrawl.org/faq/)
HTTP_ACCEPTtext/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
SERVER_SIGNATURE
SERVER_SOFTWAREApache/2.4.6 (CentOS) PHP/7.0.22
SERVER_NAMEwww.ilovee.com.br
SERVER_ADDR169.63.72.146
SERVER_PORT80
REMOTE_ADDR54.234.190.237
DOCUMENT_ROOT/var/www/iLove2.0/public
REQUEST_SCHEMEhttp
CONTEXT_PREFIX
CONTEXT_DOCUMENT_ROOT/var/www/iLove2.0/public
SERVER_ADMINwebmaster@localhost
SCRIPT_FILENAME/var/www/iLove2.0/public/index.php
REMOTE_PORT54448
REDIRECT_QUERY_STRING_url=/-2essential
REDIRECT_URL/-2essential
GATEWAY_INTERFACECGI/1.1
SERVER_PROTOCOLHTTP/1.0
REQUEST_METHODGET
QUERY_STRING_url=/-2essential
REQUEST_URI/-2essential
SCRIPT_NAME/index.php
PHP_SELF/index.php
REQUEST_TIME_FLOAT1516764800.852
REQUEST_TIME1516764800
#Path
0/var/www/iLove2.0/public/index.php
1/var/www/iLove2.0/vendor/autoload.php
2/var/www/iLove2.0/vendor/composer/autoload_real.php
3/var/www/iLove2.0/vendor/composer/ClassLoader.php
4/var/www/iLove2.0/vendor/composer/autoload_static.php
5/var/www/iLove2.0/vendor/guzzlehttp/psr7/src/functions_include.php
6/var/www/iLove2.0/vendor/guzzlehttp/psr7/src/functions.php
7/var/www/iLove2.0/vendor/league/uri-parser/src/functions_include.php
8/var/www/iLove2.0/vendor/league/uri-parser/src/functions.php
9/var/www/iLove2.0/vendor/league/uri-hostname-parser/src/functions_include.php
10/var/www/iLove2.0/vendor/league/uri-hostname-parser/src/functions.php
11/var/www/iLove2.0/vendor/guzzlehttp/promises/src/functions_include.php
12/var/www/iLove2.0/vendor/guzzlehttp/promises/src/functions.php
13/var/www/iLove2.0/vendor/league/uri-schemes/src/functions_include.php
14/var/www/iLove2.0/vendor/league/uri-schemes/src/functions.php
15/var/www/iLove2.0/vendor/league/uri-schemes/src/Schemes/deprecated.php
16/var/www/iLove2.0/vendor/league/uri-schemes/src/AbstractUri.php
17/var/www/iLove2.0/vendor/league/uri-interfaces/src/Uri.php
18/var/www/iLove2.0/vendor/league/uri-schemes/src/Data.php
19/var/www/iLove2.0/vendor/league/uri-schemes/src/File.php
20/var/www/iLove2.0/vendor/league/uri-schemes/src/Ftp.php
21/var/www/iLove2.0/vendor/league/uri-schemes/src/Http.php
22/var/www/iLove2.0/vendor/psr/http-message/src/UriInterface.php
23/var/www/iLove2.0/vendor/league/uri-schemes/src/Uri.php
24/var/www/iLove2.0/vendor/league/uri-schemes/src/UriException.php
25/var/www/iLove2.0/vendor/league/uri-parser/src/Exception.php
26/var/www/iLove2.0/vendor/league/uri-schemes/src/Ws.php
27/var/www/iLove2.0/vendor/league/uri-components/src/functions_include.php
28/var/www/iLove2.0/vendor/league/uri-components/src/functions.php
29/var/www/iLove2.0/vendor/mtdowling/jmespath.php/src/JmesPath.php
30/var/www/iLove2.0/vendor/guzzlehttp/guzzle/src/functions_include.php
31/var/www/iLove2.0/vendor/guzzlehttp/guzzle/src/functions.php
32/var/www/iLove2.0/vendor/league/uri-manipulations/src/functions_include.php
33/var/www/iLove2.0/vendor/league/uri-manipulations/src/Modifiers/functions.php
34/var/www/iLove2.0/vendor/league/uri-manipulations/src/functions.php
35/var/www/iLove2.0/vendor/swiftmailer/swiftmailer/lib/swift_required.php
36/var/www/iLove2.0/vendor/swiftmailer/swiftmailer/lib/classes/Swift.php
37/var/www/iLove2.0/vendor/aws/aws-sdk-php/src/functions.php
38/var/www/iLove2.0/apps/frontend/Module.php
39/var/www/iLove2.0/apps/helpers/StageVerification.php
40/var/www/iLove2.0/apps/frontend/controllers/CategoriaController.php
41/var/www/iLove2.0/apps/helpers/Helpers.php
42/var/www/iLove2.0/vendor/mobiledetect/mobiledetectlib/namespaced/Detection/MobileDetect.php
43/var/www/iLove2.0/vendor/mobiledetect/mobiledetectlib/Mobile_Detect.php
Memory
Usage2097152