Thursday, February 12, 2009, 9:01:09 PM, Patrick wrote: > ...or, if I'm wrong and it's not really possible to get to the matchcount > easily, you can propose modifications to FPLTemplate() for the core. :-)
okay, I can't get it to work unless there are some changes. Here is a code proposal. It introduces a PV $PageListCount, which works great in a pagelist template to show the total number of items. It also introduces a start= parameter, so we can tell pagelist from which item to start a chunk. If start is negative, it counts from the end. If count= is given as well, it will begin at 'start' position for 'count' items. If start is given and count is given as a range, it gets a bit tricky: it will start at 'start' and show length of range items. Here is the code, I include the preceding line and the following code for the range, which has one change ($PageListCount, since $matches may have been sliced already) : ## get the list of pages $matches = array_values(MakePageList($pagename, $opt, 0)); global $FmtPV, $PageListCount; $PageListCount = count($matches); $FmtPV['$PageListCount'] = $PageListCount; ## extract page subset according to 'start=' parameter if (@$opt['start']) { if ($opt['start'] >= 0) $matches = array_slice($matches, $opt['start']-1); else $matches = array_slice($matches, $PageListCount+$opt['start']); } ## extract page subset according to 'count=' parameter if (@$opt['count']) { list($r0, $r1) = CalcRange($opt['count'], $PageListCount); if ($r1 < $r0) $matches = array_reverse(array_slice($matches, $r1-1, $r0-$r1+1)); else $matches = array_slice($matches, $r0-1, $r1-$r0+1); } Hans _______________________________________________ pmwiki-devel mailing list pmwiki-devel@pmichaud.com http://www.pmichaud.com/mailman/listinfo/pmwiki-devel