Paging Recordsets

Here is an example of paging recordsets:

In your manager:

    $query = "SELECT preference_id, name, default_value FROM {$conf['table']['preference']}";
    $limit = $_SESSION['aPrefs']['resPerPage'];
    $pagerOptions = array(
        'mode'      => 'Sliding',
        'delta'     => 3,
        'perPage'   => $limit,
        'totalItems'=> $input->totalItems,
    );
    $aPagedData = SGL_DB::getPagedData($this->dbh, $query, $pagerOptions);
    $output->aPagedData = $aPagedData;
    if (is_array($aPagedData['data']) && count($aPagedData['data'])) {
        $output->pager = ($aPagedData['totalItems'] <= $limit) ? false : true;
    }

Then in the template simply call the pager subtemplate which only gets included if you have more than a pageful of records (ie, 11+ records where you specify 10/page):

{if:pager}
    <flexy:include src="pager.html" />
{end:}