I solved it,
Thanks Michael for your reply.
---- Mensaje original -----
De: Michael Kay
Para: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Enviado: sábado, 02 de febrero de 2008 15:38
Asunto: RE: [xsl] pagination - From PHP To XSL - Recursion ?
Not understanding either PHP or Spanish, I'm a bit disadvantaged here. But
in any case, trying to reverse-engineer procedural code and turn it into
declarative code is usually not the best way to go about things. You often
need a completely different approach. It would be better to describe the
inputs and outputs of your transformation, and work from there.
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: Alejandro [mailto:alexcontini(_at_)terra(_dot_)es]
Sent: 02 February 2008 15:17
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] pagination - From PHP To XSL - Recursion ?
Hello, i want to calculate and to catch the final result of
the variables $_pagi_nav_desde and $_pagi_nav_hasta to pass
them to one template. I don´t know to make it in XSL, because
i know that in XSL the variables can´t to change. Can you
help me, please?
Cheers,
Alexander
// PHP Code//
// Calculamos desde que numero de pagina se mostrara
$_pagi_nav_desde = $_pagi_actual - $_pagi_nav_intervalo; //
Calculamos hasta que numero de pagina se mostrara
$_pagi_nav_hasta = $_pagi_actual + $_pagi_nav_intervalo;
// Ajustamos los valores anteriores en caso sean resultados
no válidos
// Si $_pagi_nav_desde es un numero negativo
if($_pagi_nav_desde < 1){
// Le sumamos la cantidad sobrante al final para
mantener el numero de enlaces que se quiere mostrar.
$_pagi_nav_hasta -= ($_pagi_nav_desde - 1);
// Establecemos $_pagi_nav_desde como 1.
$_pagi_nav_desde = 1;
}
// Si $_pagi_nav_hasta es un numero mayor que el total de
paginas if($_pagi_nav_hasta > $_pagi_totalPags){
// Le restamos la cantidad excedida al comienzo para
mantener el numero de enlaces que se quiere mostrar.
$_pagi_nav_desde -= ($_pagi_nav_hasta - $_pagi_totalPags);
// Establecemos $_pagi_nav_hasta como el total de paginas.
$_pagi_nav_hasta = $_pagi_totalPags;
// Hacemos el ultimo ajuste verificando que al cambiar
$_pagi_nav_desde no haya quedado con un valor no valido.
if($_pagi_nav_desde < 1){
$_pagi_nav_desde = 1;
}
}
// XSL Code //
<xsl:call-template name="pagination-item">
<xsl:with-param name="current" select="$curpage"/>
<xsl:with-param name="p" select="$_pagi_nav_desde"/> ??
<xsl:with-param name="last" select="$_pagi_nav_hasta"/> ??
<xsl:with-param name="script" select="$script"/>
</xsl:call-template>
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--