function showField($option)
{
    global $_CB_database, $_CB_framework;
    _upgradeCbFieldsTableOldFields();
    $limit = (int) $_CB_framework->getCfg('list_limit');
    if ($limit == 0) {
        $limit = 10;
    }
    $limit = $_CB_framework->getUserStateFromRequest("viewlistlimit", 'limit', $limit);
    $lastCBlist = $_CB_framework->getUserState("view{$option}lastCBlist", null);
    if ($lastCBlist == 'showfields') {
        $limitstart = $_CB_framework->getUserStateFromRequest("view{$option}limitstart", 'limitstart', 0);
        $lastSearch = $_CB_framework->getUserState("search{$option}", null);
        $search = $_CB_framework->getUserStateFromRequest("search{$option}", 'search', '');
        if ($lastSearch != $search) {
            $limitstart = 0;
            $_CB_framework->setUserState("view{$option}limitstart", $limitstart);
        }
        $search = trim(strtolower($search));
    } else {
        clearSearchBox();
        $search = "";
        $limitstart = 0;
        $_CB_framework->setUserState("view{$option}limitstart", $limitstart);
        $_CB_framework->setUserState("view{$option}lastCBlist", "showfields");
    }
    $where = array();
    //	$where[] = "(f.sys = 0)";
    if (isset($search) && $search != "") {
        $search = cbEscapeSQLsearch(trim(strtolower(cbGetEscaped($search))));
        $where[] = "(f.name LIKE '%{$search}%' OR f.type LIKE '%{$search}%')";
    }
    if (!$_CB_framework->acl->amIaSuperAdmin()) {
        $where[] = "t.useraccessgroupid IN (" . implode(',', $_CB_framework->acl->get_groups_below_me(null, true)) . ")";
    }
    $_CB_database->setQuery("SELECT COUNT(*)" . "\n FROM #__comprofiler_fields AS f, #__comprofiler_tabs AS t" . "\n WHERE (f.tabid = t.tabid) AND (t.fields = 1)" . (count($where) ? " AND " . implode(' AND ', $where) : ""));
    $total = $_CB_database->loadResult();
    echo $_CB_database->getErrorMsg();
    if ($total <= $limitstart) {
        $limitstart = 0;
    }
    cbimport('cb.pagination');
    $pageNav = new cbPageNav($total, $limitstart, $limit);
    $_CB_database->setQuery("SELECT f.fieldid, f.title, f.name, f.description, f.type, f.required, f.published, " . "f.profile, f.ordering, f.registration, f.searchable, f.pluginid, f.sys, f.tablecolumns, " . "t.title AS 'tab', t.enabled AS 'tabenabled', t.pluginid AS 'tabpluginid', " . "p.name AS pluginname, p.published AS pluginpublished, " . "pf.name AS fieldpluginname, pf.published AS fieldpluginpublished " . "\n FROM #__comprofiler_fields AS f" . "\n INNER JOIN #__comprofiler_tabs AS t ON ( (f.tabid = t.tabid) AND (t.fields = 1) ) " . "\n LEFT JOIN #__comprofiler_plugin AS p ON p.id = t.pluginid" . "\n LEFT JOIN #__comprofiler_plugin AS pf ON pf.id = f.pluginid" . (count($where) ? "\n WHERE " . implode(' AND ', $where) : "") . "\n ORDER BY t.ordering, f.ordering", (int) $pageNav->limitstart, (int) $pageNav->limit);
    $rows = $_CB_database->loadObjectList();
    if ($_CB_database->getErrorNum()) {
        echo $_CB_database->stderr();
        return false;
    }
    $canEdit = CBuser::getMyInstance()->authoriseAction('core.edit');
    $canEditState = CBuser::getMyInstance()->authoriseAction('core.edit.state');
    HTML_comprofiler::showFields($rows, $pageNav, $search, $option, $canEdit, $canEditState);
    return true;
}