protected function getEmpresaOr404($id_empresa = 'id_empresa') { if (!$this->getRequestParameter($id_empresa)) { return $this->forward404(); } else { //$c = $this->getCriteriaEmpresas(); //$c->addAnd(EmpresaPeer::ID_EMPRESA , $this->getRequestParameter($id_empresa)); $empresa = EmpresaPeer::retrieveByPk($this->getRequestParameter($id_empresa)); $this->forward404Unless($empresa); return $empresa; } }
?> <?php use_helper("JSCookMenu"); ?> <?php if ($usuario) { echo jscookmenu_from_yml(dirname(__FILE__) . "/../config/menu.yml", "menu_name", "hbr", "cmThemeGray"); } ?> </div> <div id="wrapper"> <div id="centro"> <div id="logo_empresa"> <?php $empresa = EmpresaPeer::retrieveByPk($id_empresa); if ($empresa != null && sfContext::getInstance()->getModuleName() != "login") { $url_image = $empresa->getUrlLogoMax(); } /*else $url_image='/images/logos/default_logo_max.jpg';*/ if ($empresa instanceof Empresa && sfContext::getInstance()->getModuleName() != "login") { echo link_to(image_tag($url_image, array("alt" => $empresa->getNombre(), 'title' => $empresa->getNombre(), "border" => 0)), 'empresas/show?id_empresa=' . $empresa->getIdEmpresa()); } /*else { echo image_tag($url_image, array()); }*/ ?> </div> <?php echo $sf_content;
protected function addFiltersCriteria($c) { //$c->addJoin(FormularioPeer::ID_TABLA, TablaPeer::ID_TABLA, Criteria::JOIN); //problemos aqui. $id_empresa = isset($this->filters['id_empresa']) ? $this->filters['id_empresa'] : ""; $id_tabla = isset($this->filters['id_tabla']) ? $this->filters['id_tabla'] : null; if ($id_empresa !== "" && $id_tabla != "") { $c->addAnd(TablaPeer::ID_EMPRESA, $id_empresa, Criteria::EQUAL); } //id_tabla if ($id_tabla) { //NO CAMBIAR AQUI FormularioPeer::ID_TABLA por TablaPeer::ID_TABLA porque entonces no funciona para alguien que tienen permisos solo para algunas tablas $c->addAnd(FormularioPeer::ID_TABLA, $id_tabla, Criteria::EQUAL); } //fecha if (isset($this->filters['ultimo_contacto'])) { if (isset($this->filters['ultimo_contacto']['from']) && $this->filters['ultimo_contacto']['from'] !== '') { $criterion = $c->getNewCriterion(FormularioPeer::FECHA, $this->filters['ultimo_contacto']['from'], Criteria::GREATER_EQUAL); } if (isset($this->filters['ultimo_contacto']['to']) && $this->filters['ultimo_contacto']['to'] !== '') { if (isset($criterion)) { $criterion->addAnd($c->getNewCriterion(FormularioPeer::FECHA, $this->filters['ultimo_contacto']['to'], Criteria::LESS_EQUAL)); } else { $criterion = $c->getNewCriterion(FormularioPeer::FECHA, $this->filters['ultimo_contacto']['to'], Criteria::LESS_EQUAL); } } if (isset($criterion)) { $c->add($criterion); } } if (isset($this->filters['id_empresa']) && $this->filters['id_empresa'] != '') { $empresa = EmpresaPeer::retrieveByPk($this->filters['id_empresa']); } else { $id_empresa = sfContext::getInstance()->getUser()->getAttribute('idempresa', null); $empresa = EmpresaPeer::retrieveByPk($id_empresa); } //filtrar según campos personalizados. $campos = $empresa->getCamposFormularioOrdenadosAlcancetablas($id_tabla); if ($id_tabla == 63 && $this->filters['no_realizacion'] == 1) { $c->addAnd(ItemPeer::ID_ITEM_BASE, 316, Criteria::EQUAL); $c->addAnd(ItemPeer::FECHA, null, Criteria::EQUAL); } elseif ($id_tabla == 63 && $this->filters['no_realizacion'] == 2) { $c->addAnd(ItemPeer::FECHA, null, Criteria::NOT_EQUAL); } $filtros = new Filtros($campos, $this->filters); $filtros->updateCriteria($c); }