// convierto los get en session if (isset($_GET)) { foreach ($_GET as $key => $val) { $_SESSION['list']['tickets'][$_GET['tp']]['order'][$key] = $val; } } // page if (isset($_GET['page'])) { $_SESSION['lists']['tickets'][$_GET['tp']]['page'] = $_GET['page']; } else { $_SESSION['lists']['tickets'][$_GET['tp']]['page'] = 1; } // +----------------------------------------------------------------------+ // | Nuevos Filtros del Listado | // +----------------------------------------------------------------------+ $filtros = new Filtros(); $filtros->filtrosPost($_SESSION['list']['tickets'][$_GET['tp']]['fltr']); $filtros->query($_GET['sector'], $_POST["estado"]); $filtros->orden($_SESSION['list']['tickets'][$_GET['tp']]['order'], $_GET['sector'], $_POST["estado"]); $sql = $filtros->getQuery(); //$filtros->queryCount(); //$sql_count = $filtros->getQueryCount(); // +----------------------------------------------------------------------+ // | Nuevos Filtros del Listado | // +----------------------------------------------------------------------+ // saber el sector del staff $staff = getStaff($var_staffid); $_SESSION["sess_backreplyurl"] = ""; $var_back = "./tickets.php?mt=y&stylename=STYLETICKETS&styleminus=minus1&styleplus=plus1&tp={$var_type}&begin=" . $var_begin . "&num=" . $var_num . "&numBegin=" . $var_numBegin . "&start={$var_start}&cmbSearch=" . $var_cmbSearch . "&txtSearch=" . urlencode($var_search) . "&cmbDepartment=" . urlencode($var_deptid) . "&"; $_SESSION["sess_ticketbackurl"] = $var_back; //".is_blank(utf8_encode($row['contratoTotvs']))."
/** * Borra el registro de los filtros */ public function actionBorrafiltros() { $filtro = Filtros::model()->findByAttributes(array('sesion' => Yii::app()->getSession()->getSessionId())); if (count($filtro) == 1) { $filtro->delete(); } }
// convierto los get en session if (isset($_GET)) { foreach ($_GET as $key => $val) { $_SESSION['list']['tickets'][$_GET['tp']]['order'][$key] = $val; } } // page if (isset($_GET['page'])) { $_SESSION['lists']['tickets'][$_GET['tp']]['page'] = $_GET['page']; } else { $_SESSION['lists']['tickets'][$_GET['tp']]['page'] = 1; } // +----------------------------------------------------------------------+ // | Nuevos Filtros del Listado | // +----------------------------------------------------------------------+ $filtros = new Filtros(); $filtros->query(); $filtros->filtrosPost($_SESSION['list']['tickets'][$_GET['tp']]['fltr']); $filtros->orden($_SESSION['list']['tickets'][$_GET['tp']]['order']); $sql = $filtros->getQuery(); // +----------------------------------------------------------------------+ // | Nuevos Filtros del Listado | // +----------------------------------------------------------------------+ // saber el sector del staff $staff = getStaff($var_staffid); $_SESSION["sess_backreplyurl"] = ""; $var_back = "./tickets.php?mt=y&stylename=STYLETICKETS&styleminus=minus1&styleplus=plus1&tp={$var_type}&begin=" . $var_begin . "&num=" . $var_num . "&numBegin=" . $var_numBegin . "&start={$var_start}&cmbSearch=" . $var_cmbSearch . "&txtSearch=" . urlencode($var_search) . "&cmbDepartment=" . urlencode($var_deptid) . "&"; $_SESSION["sess_ticketbackurl"] = $var_back; ?> <div class="content_section">
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); }