Subject: RE: pagination - From PHP To XSL - Recursion ?
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Sat, 2 Feb 2008 15:38:12 -0000
|
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@xxxxxxxx]
> Sent: 02 February 2008 15:17
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: 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 don4t know to make it in XSL, because
> i know that in XSL the variables can4t 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 validos
>
> // 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>
|