Utilizamos cookies propias y de terceros para mejorar nuestros servicios y mostrarle publicidad relacionada con sus preferencias mediante el análisis de sus hábitos de navegación. Si continúa navegando consideraremos que acepta su uso. Puede cambiar la configuración u obtener más información aquí
APP ENTER
ENTRAR

He oblidat la contrasenya

ENCARA NO T'HAS REGISTRAT?

En registrar-se accepta la política d'ús així com la política de privacitat

En registrar-te acceptes la recepció d'informació rellevant de BarcelonActua

PEOPLE
INVOLVED WITH AND COMMITTED
TO THEIR
LOCAL COMMUNITY
REGISTER
SIGN UP

By registering you accept the privacy policy as well as the usage policy

By registering you accept the receipt of relevant information from BarcelonActua

. **/ var $siguiente = "Siguiente >"; /** * Código de Anterior. * * Este atributo contiene el código HTML que representará al link * para retroceder a la página anterior de resultados. * Puede ser cualquier código HTML permitido dentro dentro de un * tag . **/ var $anterior = "< Anterior"; function enablePagina() { return $this->enablePagina = func_get_arg(0); } /**metodo para acceder a la $pagina**/ function pagina() { switch (func_num_args()) { case 1 : $this->pagina = func_get_arg(0); $this->pagina = empty($this->pagina) ? 1 : $this->pagina; break; default : return $this->pagina; break; } } function porPagina() { switch (func_num_args()) { case 1 : $this->porPagina = func_get_arg(0); break; default : return $this->porPagina; break; } } /** * Despliega el link hacia la siguiente página * Siempre que quede una página siguiente, se muestra un link * hacia la siguiente página de resultados. * El método acepta ser llamado con un parámetro que contenga el * código HTML que representará al link y que pueda ser representado * encerrado dentro de un tag . **/ function siguiente() { switch (func_num_args()) { case 2 : $class = func_get_arg(1); case 1 : $this->siguiente = func_get_arg(0); default : //$a = ((($this->pagina-1)*($this->porPagina))+$this->cuantos()); //$b = $this->cuantos(); //if($this->pagina()*($this->cuantos()/$this->porPagina)+1 < $this->cuantos()) //if($a < $b); if($this->pagina < $this->totalPaginas()) { if($_SESSION["editar"]) return "paramPaginado . "=" . ($this->pagina() + 1) . $this->propagar() . $this->anchor . "\">" . $this->siguiente . ""; else return "paramPaginado . "=" . ($this->pagina() + 1) . $this->propagar()) . $this->anchor . "\">" . $this->siguiente . ""; } if($this->pagina() == $this->totalPaginas()) { //return $this->siguiente; return "" . $this->siguiente . $this->anchor . ""; } break; } } /** * Despliega el link hacia la página anterior. * * Siempre que no estemos en la primer página, se muestra un link * hacia la página anterior de resultados. * El método acepta ser sllamado con un parámetro que contenga el * código HTML que representará al link y que pueda ser representado * encerrado dentro de un tag . **/ function anterior() { switch (func_num_args()) { case 2 : $class = func_get_arg(1); case 1 : $this->anterior = func_get_arg(0); default : if($this->pagina() != 1) { if($_SESSION["editar"]) return "paramPaginado . "=" . ($this->pagina() - 1) . $this->propagar() . $this->anchor . "\">" . $this->anterior . ""; else return "paramPaginado . "=" . ($this->pagina() - 1) . $this->propagar()) . $this->anchor . "\">" . $this->anterior . ""; } if($this->pagina() == 1) { //return $this->anterior; return "" . $this->anterior . $this->anchor . ""; } break; } } function anterior3() { global $_object; switch (func_num_args()) { case 2 : $class = func_get_arg(1); case 1 : $this->anterior = func_get_arg(0); default : //de momento la funcion linkTo solo acepta parametros por array $propagar[$this->paramPaginado] = ($this->pagina() - 1); if($this->propagar()) { $str = explode('&', $this->propagar()); foreach($str as $v) { $str2 = explode('=', $v); if(trim($str2[0])) $propagar[$str2[0]] = $str2[1]; } } //if($GLOBALS['idiomas']) //{ if($this->pagina() != 1) { if($_SESSION["editar"])//no esta programado return "paramPaginado . "=" . ($this->pagina() - 1) . $this->propagar() . $this->anchor . "\">" . $this->anterior . ""; else return "anchor . "\">" . $this->anterior . ""; } if($this->pagina() == 1) { //return $this->anterior; //return "".$this->anterior .""; return ; } //} break; } } function siguiente3() { global $_object; switch (func_num_args()) { case 2 : $class = func_get_arg(1); case 1 : $this->siguiente = func_get_arg(0); default : //de momento la funcion linkTo solo acepta parametros por array $propagar[$this->paramPaginado] = ($this->pagina() + 1); if($this->propagar()) { $str = explode('&', $this->propagar()); foreach($str as $v) { $str2 = explode('=', $v); if(trim($str2[0])) $propagar[$str2[0]] = $str2[1]; } } //$a = ((($this->pagina-1)*($this->porPagina))+$this->cuantos()); //$b = $this->cuantos(); //if($this->pagina()*($this->cuantos()/$this->porPagina)+1 < $this->cuantos()) //if($a < $b); if ($this->pagina < $this->totalPaginas()) { if($_SESSION["editar"]) return "paramPaginado . "=" . ($this->pagina() + 1) . $this->propagar() . $this->anchor . "\">" . $this->siguiente . ""; else //return "paramPaginado."=".($this->pagina()+1).$this->propagar())."\">".$this->siguiente.""; return "anchor . "\">" . $this->siguiente . ""; } if($this->pagina() == $this->totalPaginas()) { //return $this->siguiente; //return "".$this->siguiente.$this->anchor.""; return; } break; } } /** * Despliega los números de páginas posibles * Este método muestra una lista de todas las páginas posibles como * links, excepto la página actual, que se encuentra sin link y resaltada * en negrita. **/ function nroPaginas($separador="|", $preLink="", $postLink="", $preActive="", $postActive="") { if($_SESSION["editar"]) { //for($i = 1; $i <= $this->totalPaginas() ; $i++) $ini = intval($this->pagina / 5) * 5; if($ini == 0) $ini = 1; $fin = (intval($this->pagina / 5) * 5) + 5; if($fin > $this->totalPaginas()) $fin = $this->totalPaginas(); for($i = $ini; $i <= $fin; $i++) { //if($i == $ini){ $preLink = str_replace('li', 'li class="primera"', $preLink); } $temp[$i] = $preLink . "paramPaginado . "=$i" . $this->propagar()) . $this->anchor . "\">$i" . $postLink; //if($i == $ini){ $preLink = str_replace('li class="primera"', 'li', $preLink); } } // for //if($this->pagina() == $ini) { $preActive = str_replace('li', 'li class="primera"', $preActive); } $class = 'class="seleccionada"'; $temp[$this->pagina()] = $preActive . "paramPaginado . "=$i" . $this->propagar() . $this->anchor) . "\" $class>" . $this->pagina() . "" . $postActive; return implode(" " . $separador . " ", $temp); } else { $ini = intval($this->pagina / 5) * 5; if($ini == 0) $ini = 1; $fin = (intval($this->pagina / 5) * 5) + 5; if($fin > $this->totalPaginas()) $fin = $this->totalPaginas(); //echo""; for($i = $ini; $i <= $fin; $i++) { //if($i == $ini){ $preLink = str_replace('li', 'li class="primera"', $preLink); } $temp[$i] = $preLink . "paramPaginado . "=$i" . $this->propagar() . $this->anchor) . "\">$i" . $postLink; //if($i == $ini){ $preLink = str_replace('li class="primera"', 'li', $preLink); } } // for //if($this->pagina() == $ini) { $preActive = str_replace('li', 'li class="primera"', $preActive); } $class = 'class="seleccionada"'; $temp[$this->pagina()] = $preActive . "paramPaginado . "=$i" . $this->propagar() . $this->anchor) . "\" $class>" . $this->pagina() . "" . $postActive; return implode("", $temp); } } // function function nroPaginas3($separador="|", $preLink="", $postLink="", $preActive="", $postActive="") { global $_object; //de momento la funcion linkTo solo acepta parametros por array if($this->propagar()) { $str = explode('&', $this->propagar()); foreach($str as $v) { $str2 = explode('=', $v); if(trim($str2[0])) $propagar[$str2[0]] = $str2[1]; } } if($_SESSION["editar"]) { //for($i = 1; $i <= $this->totalPaginas() ; $i++) $ini = intval($this->pagina / 5) * 5; if($ini == 0) $ini = 1; $fin = (intval($this->pagina / 5) * 5) + 5; if($fin > $this->totalPaginas()) $fin = $this->totalPaginas(); for($i = $ini; $i <= $fin; $i++) { //propagar $propagar[$this->paramPaginado] = $i; //if($i == $ini){ $preLink = str_replace('li', 'li class="primera"', $preLink); } //if($i == ($fin)){ $preLink = str_replace('li', 'li class="ultima"', $preLink); } //$temp[$i] = $preLink."paramPaginado."=$i".$this->propagar())."\">$i".$postLink; $temp[$i] = $preLink . "anchor . "\">$i" . $postLink; //if($i == $ini){ $preLink = str_replace('li class="primera"', 'li', $preLink); } //if($i == ($fin)){ $preLink = str_replace('li class="ultima"', 'li', $preLink); } } // for //if($this->pagina() == $ini) { $preActive = str_replace('li', 'li class="primera"', $preActive); } //if($this->pagina() == ($fin)) { $preActive = str_replace('li', 'li class="ultima"', $preActive); } //$class = 'class="seleccionada"'; //propagar $propagar[$this->paramPaginado] = $this->pagina(); //$temp[$this->pagina()] = $preActive."paramPaginado."=$i".$this->propagar())."\" $class>".$this->pagina()."".$postActive; $temp[$this->pagina()] = $preActive . $this->pagina() . $postActive; return implode(" " . $separador . " ", $temp); } else { $ini = intval($this->pagina / 5) * 5; if($ini == 0) $ini = 1; $fin = (intval($this->pagina / 5) * 5) + 5; if($fin > $this->totalPaginas()) $fin = $this->totalPaginas(); for($i = $ini; $i <= $fin; $i++) { //propagar $propagar[$this->paramPaginado] = $i; //if($i == $ini){ $preLink = str_replace('li', 'li class="primera"', $preLink); } //if($i == ($fin)){ $preLink = str_replace('li', 'li class="ultima"', $preLink); } //$temp[$i] = $preLink."paramPaginado."=$i".$this->propagar())."\">$i".$postLink; $temp[$i] = $preLink . "anchor . "\">$i" . $postLink; //if($i == $ini){ $preLink = str_replace('li class="primera"', 'li', $preLink); } //if($i == ($fin)){ $preLink = str_replace('li class="ultima"', 'li', $preLink); } } // for //if($this->pagina() == $ini) { $preActive = str_replace('li', 'li class="primera"', $preActive); } //if($this->pagina() == ($fin)) { $preActive = str_replace('li', 'li class="ultima"', $preActive); } //$class = 'class="seleccionada"'; //propagar $propagar[$this->paramPaginado] = $this->pagina(); //$temp[$this->pagina()] = $preActive."paramPaginado."=$i".$this->propagar())."\" $class>".$this->pagina()."".$postActive; $temp[$this->pagina()] = $preActive . $this->pagina() . $postActive; return implode(" " . $separador . " ", $temp); } } /** * Indica que variables se desean propagar en los links. * * Este metodo recibe una lista de nombres que son guarados internamente * hasta que son creados los links para navegar los resultados. En ese * momento, son agregados los nombres de las variables con sus valores * para que puedan ser propagados. **/ function propagar() { switch(func_num_args()) { case 0 : if($this->variables && is_array($this->variables)) { foreach($this->variables as $var) { //$ret.= "&$var=".$GLOBALS[$var]; if($GLOBALS[$var]) { if (is_array($GLOBALS[$var])) { foreach ($GLOBALS[$var] as $k => $v) $ret .= '&'.sanitize($var).'['.sanitize($k).']=' . sanitize($v); } else $ret .= '&'.sanitize($var).'=' . sanitize($GLOBALS[$var]); } elseif($_REQUEST[$var]) { if (is_array($_REQUEST[$var])) { foreach ($_REQUEST[$var] as $k => $v) $ret .= '&'.sanitize($var).'['.sanitize($k).']=' . sanitize($v); } else $ret .= '&'.sanitize($var).'=' . sanitize($_REQUEST[$var]); } } } return $ret; break; default : for($i = 0; $i < func_num_args(); $i++) { $this->variables[] = func_get_arg($i); } break; } } /** * Retorna el indice dentro del Result Set del primer * elemento de la página actual. **/ function desde() { return (($this->pagina() - 1) * $this->porPagina()) + 1; } /** * Retorna el �ndice dentro del Result Set del �ltimo * elemento de la p�gina actual. **/ function hasta() { return ($this->desde() - 1) + $this->cuantos(); } /** * Método para acceder a $total **/ function total() { switch (func_num_args()) { case 1 : $this->total = func_get_arg(0); break; default : return $this->total; break; } } function totalPaginas() { switch (func_num_args()) { case 1 : $this->totalPaginas = func_get_arg(0); break; default : return $this->totalPaginas; break; } } /** * Método para acceder a $_registros **/ function registros() { switch (func_num_args()) { case 1 : $this->_registros = func_get_arg(0); break; default : return $this->registros; break; } } function pagInicio() { if($this->pagina() > 1) { return "paramPaginado . "=1" . $this->propagar() . $this->anchor . "\">" . func_get_arg(0) . ""; } elseif($this->pagina() == 1) return func_get_arg(0); } function pagFinal() { if($this->pagina() < $this->totalPaginas()) { return "paramPaginado . "=" . $this->totalPaginas() . $this->propagar() . $this->anchor . "\">" . func_get_arg(0) . ""; } elseif($this->pagina() == $this->totalPaginas()) return func_get_arg(0); } function mostrarEnlaces($separador="|", $strAnterior, $strSiguiente, $strInicio="", $strFinal="") { //return ($this->anterior()." ".$separador." ".$this->nroPaginas($separador)." ".$separador." ".$this->siguiente($cuantos)); //return ($this->anterior($strAnterior)." ".$separador." ".$this->nroPaginas($separador)." ".$separador." ".$this->siguiente($strSiguiente)); if($this->enablePagina) return ($this->pagInicio("$strInicio") . " " . $this->anterior("$strAnterior") . " " . $separador . " " . $this->siguiente("$strSiguiente") . " " . $this->pagFinal("$strFinal")); } function getM($where = "", $orden = "", $strId = "id", $cabeceraSelect = "", $groupby = "", $prefix = "") { //idioma if (!$cabeceraSelect) { if ($this->vars["idioma"]) { if ($_SESSION["idioma"]) $strWhere .= " WHERE id_idioma = " . $_SESSION["idioma"]; else $strWhere .= " WHERE id_idioma = 1"; } } if($this->dominios){ if ($strWhere) { $strWhere .= " AND ".$prefix."dominio_ciudad={$_SESSION['dominio_ciudad']}"; } else { $strWhere .= " WHERE ".$prefix."dominio_ciudad={$_SESSION['dominio_ciudad']}"; } } if ($orden) $strOrden = " ORDER BY " . $orden; if ($groupby) $strGroupby = " GROUP BY " . $groupby; if ($strWhere) { if ($where) $strWhere .= " AND " . $where; } else { if ($where) $strWhere .= " WHERE " . $where; } // control publicado if ($this->isVersioned()) { if (!$_SESSION['editar']) { if ($strWhere) $strWhere .= " AND ott_publicado = 1"; else $strWhere .= " WHERE ott_publicado = 1"; } else { if ($strWhere) $strWhere .= " AND ott_version_activa = 1"; else $strWhere .= " WHERE ott_version_activa = 1"; } } if (!$this->res) { //echo "
"; if (!$cabeceraSelect) { if ($this->isVersioned()) { if ($this->vars["idioma"]) { $_sql = "SELECT * FROM ( SELECT * FROM " . $this->tabla . " WHERE dominio_ciudad={$_SESSION['dominio_ciudad']} ORDER BY ott_version DESC) as tmp " . $strWhere . " GROUP BY id,id_idioma " . $strOrden; } else { $_sql = "SELECT * FROM ( SELECT * FROM " . $this->tabla . " WHERE dominio_ciudad={$_SESSION['dominio_ciudad']} ORDER BY ott_version DESC) as tmp " . $strWhere . " GROUP BY id " . $strOrden; } //$_sql = "select t1.* from " . $this->tabla . " AS t1 LEFT OUTER JOIN " . $this->tabla . " AS t2 ON (t1.id = t2.id AND t1.ott_version < t2.ott_version) " . $strWhere . " AND t2.id IS NULL and t1.id_idioma = ".$_SESSION['idioma'] . $strOrden . $strLimit; } else { $_sql = "SELECT * FROM " . $this->tabla . $strWhere . $strOrden; } /* if ($this->isVersioned()) { $_sql = "select t1.* from " . $this->tabla . " AS t1 LEFT OUTER JOIN " . $this->tabla . " AS t2 ON (t1.id = t2.id AND t1.ott_version < t2.ott_version) " . $strWhere . " AND t2.id IS NULL and t1.id_idioma = ".$_SESSION['idioma'] . $strOrden; } else { $_sql = "select * from " . $this->tabla . $strWhere . $strOrden; } */ } else { $_sql = $cabeceraSelect . $strWhere . $strGroupby . $strOrden; } //echo $_sql; if($this->debug) echo $_sql; $_SESSION['sql_list']=$_sql; $_res = mysql_query($_sql, $this->linkr); if($this->enablePagina) { $this->res = $_res; $this->total($this->cuantos()); $this->totalPaginas(ceil($this->total() / $this->porPagina())); // Comprobamos que no se intenta acceder a una página que no existe. if($this->pagina() > $this->totalPaginas()) { $this->error("No existe la página " . $this->pagina() . " de resultados. Hay solo un total de " . $this->totalPaginas()); return false; } $strLimit = " limit " . ($this->desde() - 1) . "," . $this->porPagina; //exit($strLimit); } if (!$cabeceraSelect) { if ($this->isVersioned()) { if ($this->vars["idioma"]) { $_sqlA = "SELECT * FROM ( SELECT * FROM " . $this->tabla . " WHERE dominio_ciudad={$_SESSION['dominio_ciudad']} ORDER BY ott_version DESC) as tmp " . $strWhere . " GROUP BY id,id_idioma " . $strOrden . $strLimit; } else { $_sqlA = "SELECT * FROM ( SELECT * FROM " . $this->tabla . " WHERE dominio_ciudad={$_SESSION['dominio_ciudad']} ORDER BY ott_version DESC) as tmp " . $strWhere . " GROUP BY id " . $strOrden . $strLimit; } //$_sqlA = "select t1.* from " . $this->tabla . " AS t1 LEFT OUTER JOIN " . $this->tabla . " AS t2 ON (t1.id = t2.id AND t1.ott_version < t2.ott_version) " . $strWhere . " AND t2.id IS NULL and t1.id_idioma = ".$_SESSION['idioma'] . $strOrden . $strLimit; } else { $_sqlA = "SELECT * FROM " . $this->tabla . $strWhere . $strOrden . $strLimit; } } else { $_sqlA = $cabeceraSelect . $strWhere . $strGroupby . $strOrden . $strLimit; } if($this->debug) echo $_sqlA; //$this->registros( $this->cuantos()); $_resA = mysql_query($_sqlA, $this->linkr); if(!$_resA) { $this->error = "Error: $_sqlA
" . mysql_error(); return false; } $_dataA = mysql_fetch_object($_resA); if(!$_dataA) { $this->error = "Error, registro no encontrado: $_sqlA
" . mysql_error(); return false; } foreach($this->campos as $campo => $valor) { $this->campos[$campo] = $_dataA->$campo; } $this->id = $_dataA->$strId; $this->fecha_alta = $_dataA->fecha_alta; $this->res = $_resA; parent::getInfoVersion($_dataA); } else { $_dataA = mysql_fetch_object($this->res); if(!$_dataA) { $this->error = "Error, fin dataset: $_sqlA
" . mysql_error(); return false; } foreach($this->campos as $campo => $valor) $this->campos[$campo] = $_dataA->$campo; $this->id = $_dataA->$strId; $this->fecha_alta = $_dataA->fecha_alta; parent::getInfoVersion($_dataA); } return true; } function getMSinDominios($where = "", $orden = "", $strId = "id", $cabeceraSelect = "", $groupby = "", $prefix = "") { //idioma if (!$cabeceraSelect) { if ($this->vars["idioma"]) { if ($_SESSION["idioma"]) $strWhere .= " WHERE id_idioma = " . $_SESSION["idioma"]; else $strWhere .= " WHERE id_idioma = 1"; } } /*if($this->dominios){ if ($strWhere) { $strWhere .= " AND ".$prefix."dominio_ciudad={$_SESSION['dominio_ciudad']}"; } else { $strWhere .= " WHERE ".$prefix."dominio_ciudad={$_SESSION['dominio_ciudad']}"; } }*/ if ($orden) $strOrden = " ORDER BY " . $orden; if ($groupby) $strGroupby = " GROUP BY " . $groupby; if ($strWhere) { if ($where) $strWhere .= " AND " . $where; } else { if ($where) $strWhere .= " WHERE " . $where; } if (!$this->res) { //echo "
"; if (!$cabeceraSelect) { $_sql = "SELECT * FROM " . $this->tabla . $strWhere . $strOrden; } else { $_sql = $cabeceraSelect . $strWhere . $strGroupby . $strOrden; } //echo $_sql; if($this->debug) echo $_sql; $_SESSION['sql_list']=$_sql; $_res = mysql_query($_sql, $this->linkr); if($this->enablePagina) { $this->res = $_res; $this->total($this->cuantos()); $this->totalPaginas(ceil($this->total() / $this->porPagina())); // Comprobamos que no se intenta acceder a una página que no existe. if($this->pagina() > $this->totalPaginas()) { $this->error("No existe la página " . $this->pagina() . " de resultados. Hay solo un total de " . $this->totalPaginas()); return false; } $strLimit = " limit " . ($this->desde() - 1) . "," . $this->porPagina; //exit($strLimit); } if (!$cabeceraSelect) { $_sqlA = "SELECT * FROM " . $this->tabla . $strWhere . $strOrden . $strLimit; } else { $_sqlA = $cabeceraSelect . $strWhere . $strGroupby . $strOrden . $strLimit; } if($this->debug) echo $_sqlA; //$this->registros( $this->cuantos()); $_resA = mysql_query($_sqlA, $this->linkr); if(!$_resA) { $this->error = "Error: $_sqlA
" . mysql_error(); return false; } $_dataA = mysql_fetch_object($_resA); if(!$_dataA) { $this->error = "Error, registro no encontrado: $_sqlA
" . mysql_error(); return false; } foreach($this->campos as $campo => $valor) { $this->campos[$campo] = $_dataA->$campo; } $this->id = $_dataA->$strId; $this->fecha_alta = $_dataA->fecha_alta; $this->res = $_resA; parent::getInfoVersion($_dataA); } else { $_dataA = mysql_fetch_object($this->res); if(!$_dataA) { $this->error = "Error, fin dataset: $_sqlA
" . mysql_error(); return false; } foreach($this->campos as $campo => $valor) $this->campos[$campo] = $_dataA->$campo; $this->id = $_dataA->$strId; $this->fecha_alta = $_dataA->fecha_alta; parent::getInfoVersion($_dataA); } return true; } function renew() { unset($this->res); } function setParamPaginado($str) { $this->paramPaginado = $str; } function setAnchor($str) { $this->anchor = '#'.$str; } } ?>
Get involved
Get involved
Stay informed about our activities, initiatives, and updates. Subscribe to our newsletter. All communications will be conducted in Catalan..
What happens in our sorroundings
Contact us