static function obtener($campo, $orden, $offset, $limite, $email = '') { $orden = $orden == 'desc' ? 'desc' : 'asc'; $sort_columns = array('NombreProyecto', 'FechaComienzo', 'FechaFinPrevista', 'Estado', 'Tipo', 'Direccion', 'Ciudad', 'Provincia'); $campo = in_array($campo, $sort_columns) ? $campo : 'NombreProyecto'; if ($email != '') { $aux = array(); self::$db->select('CodigoProyecto'); self::$db->from('ProyectoEmpleados'); self::$db->where('EmailEmpleado', $email); $query = self::$db->get(); $proyect = $query->result(); foreach ($proyect as $p) { array_push($aux, $p->CodigoProyecto); } $proyectos = array(); if (!empty($aux)) { self::$db->select('*'); self::$db->from('Proyectos'); if ($email != '') { self::$db->where_in('Codigo', $aux); } self::$db->limit($limite, $offset); self::$db->order_by($campo, $orden); $query = self::$db->get(); $proyectos = $query->result(); foreach ($proyectos as $proyecto) { $proyecto->Tipo = Proyecto_model::_tipo($proyecto->Tipo); } } } else { $proyectos = array(); self::$db->select('*'); self::$db->from('Proyectos'); if ($email != '') { self::$db->where_in('Codigo', $aux); } self::$db->limit($limite, $offset); self::$db->order_by($campo, $orden); $query = self::$db->get(); $proyectos = $query->result(); foreach ($proyectos as $proyecto) { $proyecto->Tipo = Proyecto_model::_tipo($proyecto->Tipo); } } return $proyectos; }