if ($key == 0) {
            $trackerPrimary = Tracker_Query::tracker($trackerId)->start($_REQUEST['start'][$key])->end($_REQUEST['end'][$key])->equals($_REQUEST['q'][$key])->search($_REQUEST['search'][$key])->fields($_REQUEST['fields'][$key])->status($_REQUEST['status'][$key])->query();
        } else {
            $joinVars = $_REQUEST['itemIdFields'][$key - 1];
            $joinVars = explode('|', $joinVars);
            $trackerPrimary = Tracker_Query::join_trackers($trackerPrimary, Tracker_Query::tracker($trackerId)->start($_REQUEST['start'][$key])->end($_REQUEST['end'][$key])->equals($_REQUEST['q'][$key])->search($_REQUEST['search'][$key])->fields($_REQUEST['fields'][$key])->status($_REQUEST['status'][$key])->query(), $joinVars[0], $joinVars[1]);
        }
        $i++;
    }
}
if (isset($_REQUEST['sortFieldIds']) == true) {
    Tracker_Query::arfsort($trackerPrimary, $_REQUEST['sortFieldIds']);
}
if (isset($_REQUEST['removeFieldIds']) == true || isset($_REQUEST['showFieldIds']) == true) {
    $trackerPrimary = Tracker_Query::filter_fields_from_tracker_query($trackerPrimary, $_REQUEST['removeFieldIds'], $_REQUEST['showFieldIds']);
}
if (isset($_REQUEST['dateFieldIds'])) {
    $trackerPrimary = dateFormat($_REQUEST['dateFieldIds'], $trackerPrimary);
}
$trackerPrimary = Tracker_Query::prepend_field_header($trackerPrimary, $_REQUEST['sortFieldNames']);
if (isset($_REQUEST['time']) == true) {
    $endtime = microtime();
    $endarray = explode(" ", $endtime);
    $endtime = $endarray[1] + $endarray[0];
    $totaltime = $endtime - $starttime;
    $totaltime = round($totaltime, 5);
    echo "This page loaded in {$totaltime} seconds.\n\n\n";
}
if ($_REQUEST['type'] == 'csv' && count($trackerPrimary) > 0) {
    print_r(Tracker_Query::to_csv($trackerPrimary));
}