return;
    }
    $output = $ctlView->renderRows($products, $cv_config['tpl']);
    $pagination = '';
    if ($cv_config['paginate'] && !$cv_config['randomize'] && $cv_config['display'] > 0) {
        //pagination
        require_once MODX_BASE_PATH . "assets/snippets/catalogView/classes/pagination.class.php";
        $p = new pagination();
        $p->nextT = $langTxt['next'];
        //' <a href="[+link+]">'.$langTxt['next'].'</a> ';
        $p->prevT = $langTxt['prev'];
        //' <a href="[+link+]">'.$langTxt['prev'].'</a> ';
        $p->numberT = ' <a href="[+link+]" class="' . $cv_config['pageClass'] . '">[+num+]</a> ';
        $p->currentT = ' <b class="' . $cv_config['currentPageClass'] . '">[+num+]</b> ';
        $p->prevI = '';
        $p->Items($total);
        $p->limit($ctlView->config['display']);
        $p->target($cv_config['thisPageUrl'] . $pagesQueryString);
        $p->currentPage($qs_page);
        $p->parameterName($cv_config['id_prefix'] . 'page');
        $p->changeClass($cv_config['pageParentClass']);
        $pagination .= $p->getOutput();
        $totalPages = ceil($total / $qs_display);
        $ctlView->setMODxPlaceholders(array("pages" => $pagination, "totalPages" => $totalPages));
    }
    $ctlView->setMODxPlaceholders(array("sortBy" => $qs_sortBy, "sortDir" => $qs_sortDir, "qs_start" => $qs_start, "total" => $total, "currentPage" => $qs_page, "display" => $qs_display, "sortDirOther" => $sortDirOther, "filter" => $qs_filter, "pagesQueryString" => $pagesQueryString, "thisPageUrl" => $cv_config['thisPageUrl']));
    if ($cv_config['toPlaceholder']) {
        $ctlView->setMODxPlaceholders(array($cv_config['toPlaceholder'] => $output));
        $output = '';
    }
}