#$results_url	= $results_page ."?release_id=$release_id&build_id=$build_id&testset_id=$testset_id";
$rows_testsets = testset_filter_row($project_id, $build_name, $release_name, $per_page, $order_by, $order_dir, $page_number);
#$rows_testsets = testset_get_last($project_id);
if ($rows_testsets) {
    print "<table align=center rules=cols class=width95>" . NEWLINE;
    print "<tr>" . NEWLINE;
    html_tbl_print_sortable_header(lang_get('testset_id'), TS_TBL . "." . TS_ID, $order_by, $order_dir);
    html_tbl_print_sortable_header(lang_get('testset_name'), TS_TBL . "." . TS_NAME, $order_by, $order_dir);
    html_tbl_print_sortable_header(lang_get('build_name'), BUILD_TBL . "." . BUILD_NAME, $order_by, $order_dir);
    html_tbl_print_sortable_header(lang_get('release_name'), RELEASE_TBL . "." . RELEASE_NAME, $order_by, $order_dir);
    html_tbl_print_sortable_header(lang_get('tests'));
    # Display table headers based on the statuses of the project
    foreach ($statuses as $status) {
        html_tbl_print_header($status);
    }
    html_tbl_print_sortable_header(lang_get('testset_date_received'), TS_TBL . "." . TS_DATE_CREATED, $order_by, $order_dir);
    print "</tr>" . NEWLINE;
    foreach ($rows_testsets as $row_testset) {
        $testset_id = $row_testset[TS_ID];
        $num_tests = admin_count_tests_in_testset($testset_id);
        #$testset_name = admin_get_testset_name( $testset_id );
        $testset_name = $row_testset[TS_NAME];
        $testset_build_id = admin_get_build_id_from_testset_id($testset_id);
        #$testset_build_name = admin_get_build_name($testset_build_id);
        $testset_build_name = $row_testset[BUILD_NAME];
        $testset_release_id = admin_get_release_id_from_build_id($testset_build_id);
        #$testset_release_name = admin_get_release_name($testset_release_id);
        $testset_release_name = $row_testset[RELEASE_NAME];
        $testset_date_created = $row_testset[TS_DATE_CREATED];
        $display_test_id = util_pad_id($testset_id);
        $results_url = $results_page . "?release_id={$testset_release_id}&amp;build_id={$testset_build_id}&amp;testset_id={$testset_id}";
 print "<div align=center>" . NEWLINE;
 print "<table class=width100 rules=cols>" . NEWLINE;
 # Table headers
 print "<tr class=tbl_header>" . NEWLINE;
 print "<th></th>";
 html_tbl_print_sortable_header(lang_get('req_id'), REQ_ID, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('version'), REQ_VERS_VERSION, $order_by, $order_dir);
 html_tbl_print_sortable_header("");
 html_tbl_print_sortable_header(lang_get('req_name'), REQ_FILENAME, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('req_detail'), REQ_VERS_DETAIL, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('req_type'), REQ_DOC_TYPE_NAME, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('status'), REQ_VERS_STATUS, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('req_area'), REQ_AREA_COVERAGE, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('functionality'));
 html_tbl_print_sortable_header(lang_get('req_locked_by'), REQ_LOCKED_BY, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('req_locked_date'), REQ_LOCKED_DATE, $order_by, $order_dir);
 print "</tr>" . NEWLINE;
 foreach ($rows_requirement as $row_requirement) {
     $req_id = util_pad_id($row_requirement[REQ_ID]);
     $req_name = $row_requirement[REQ_FILENAME];
     $req_version_id = $row_requirement[REQ_VERS_UNIQUE_ID];
     $req_version = $row_requirement[REQ_VERS_VERSION];
     $req_version_filename = $row_requirement[REQ_VERS_FILENAME];
     $req_version_detail = $row_requirement[REQ_VERS_DETAIL];
     $req_doc_type = $row_requirement[REQ_DOC_TYPE_NAME];
     $req_version_status = $row_requirement[REQ_VERS_STATUS];
     $req_area_covered = $row_requirement[REQ_AREA_COVERAGE];
     $req_locked_by = $row_requirement[REQ_LOCKED_BY];
     $req_locked_date = $row_requirement[REQ_LOCKED_DATE];
     $row_style = html_tbl_alternate_bgcolor($row_style);
     $rows_functions = requirement_get_functionality($project_id, $row_requirement[REQ_ID]);
 # html_tbl_print_header( lang_get('testtype'), 	TEST_TESTTYPE,		$order_by, $order_dir );
 # html_tbl_print_header( lang_get('area_tested'), TEST_AREA_TESTED,	$order_by, $order_dir );
 # html_tbl_print_header( lang_get('test_status'), TEST_STATUS,		$order_by, $order_dir );
 # html_tbl_print_header( lang_get('priority'),    TEST_PRIORITY,	    $order_by, $order_dir );
 html_tbl_print_sortable_header(lang_get('test_id'), TEST_ID, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('man_auto'));
 html_tbl_print_sortable_header(lang_get('file_type'));
 html_tbl_print_sortable_header(lang_get('autopass'), TEST_AUTO_PASS, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('test_name'), TEST_NAME, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('ba_owner'), TEST_BA_OWNER, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('qa_owner'), TEST_QA_OWNER, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('tester'), TEST_TESTER, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('testtype'), TEST_TESTTYPE, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('area_tested'), TEST_AREA_TESTED, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('test_status'), TEST_STATUS, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('priority'), TEST_PRIORITY, $order_by, $order_dir);
 print "</tr>" . NEWLINE;
 $g_timer->mark_time("Outputting main html table to browser");
 $row_style = '';
 print "</thead>" . NEWLINE;
 print "<tbody>" . NEWLINE;
 foreach ($row as $row_test_detail) {
     $test_id = $row_test_detail[TEST_ID];
     //$test_version_id = $row_test_detail[TEST_VERS_ID];
     $test_name = $row_test_detail[TEST_NAME];
     $ba_owner = $row_test_detail[TEST_BA_OWNER];
     $qa_owner = $row_test_detail[TEST_QA_OWNER];
     $tester = $row_test_detail[TEST_TESTER];
     $test_type = $row_test_detail[TEST_TESTTYPE];
     $manual = $row_test_detail[TEST_MANUAL];
     $automated = $row_test_detail[TEST_AUTOMATED];
print "<td>" . NEWLINE;
$rows_requirement = requirement_get($project_id, $page_number, $order_by, $order_dir, "", "", "", "", "", "latest", $per_page = RECORDS_PER_PAGE_REQUIREMENT_NOTIFICATIONS, "", "");
print "</td>" . NEWLINE;
print "</tr>" . NEWLINE;
print "</table>" . NEWLINE;
print "</div>" . NEWLINE;
################################################################################
# Testset table
if ($rows_requirement) {
    print "<div align=center>" . NEWLINE;
    print "<table class=width60 rules=cols>" . NEWLINE;
    # Table headers
    print "<tr class=tbl_header>" . NEWLINE;
    html_tbl_print_sortable_header("email");
    html_tbl_print_sortable_header(lang_get('req_id'), REQ_ID, $order_by, $order_dir);
    html_tbl_print_sortable_header(lang_get('req_name'), REQ_FILENAME, $order_by, $order_dir);
    print "</tr>" . NEWLINE;
    foreach ($rows_requirement as $row_requirement) {
        $req_id = $row_requirement[REQ_ID];
        $req_name = $row_requirement[REQ_FILENAME];
        if (empty($records)) {
            $records = $row_requirement[REQ_ID] . " => ''";
        } else {
            $records .= ", " . $row_requirement[REQ_ID] . " => ''";
        }
        $row_style = html_tbl_alternate_bgcolor($row_style);
        # Rows
        print "<tr class='{$row_style}'>" . NEWLINE;
        if (session_records_ischecked("requirements_notification", $req_id)) {
            print "<td><input type=checkbox name=row_{$req_id} value='' checked></td>" . NEWLINE;
        } else {
     print "<th class='unsortable'></th>" . NEWLINE;
 }
 #html_tbl_print_header( lang_get('id'), TEST_ID, $order_by, $order_dir );
 html_tbl_print_sortable_header(lang_get('id'), TEST_ID, $order_by, $order_dir);
 print "<th class='unsortable'></th>" . NEWLINE;
 html_tbl_print_sortable_header(lang_get('test_name'), TEST_NAME, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('ba_owner'), TEST_BA_OWNER, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('qa_owner'), TEST_QA_OWNER, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('testtype'), TEST_TESTTYPE, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('area_tested'), TEST_AREA_TESTED, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('test_run'));
 html_tbl_print_sortable_header(lang_get('tester'), TEST_TS_ASSOC_TBL . "." . TEST_TS_ASSOC_ASSIGNED_TO, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('info'));
 print "<th class='unsortable'></th>" . NEWLINE;
 #html_tbl_print_header( lang_get('bug') );
 html_tbl_print_sortable_header(lang_get('test_status'), TEST_TS_ASSOC_STATUS, $order_by, $order_dir);
 if (!$locked) {
     html_tbl_print_header_not_sortable(lang_get('run_test'));
     html_tbl_print_header_not_sortable(lang_get('update'));
 }
 print "</tr>" . NEWLINE;
 print "</thead>" . NEWLINE;
 print "<tbody>" . NEWLINE;
 #html_tbl_print_header( lang_get('test_name') );
 #html_tbl_print_header( lang_get('ba_owner') );
 #html_tbl_print_header( lang_get('qa_owner') );
 #html_tbl_print_header( lang_get('testtype') );
 #html_tbl_print_header( lang_get('area_tested') );
 #html_tbl_print_header( lang_get('test_doc') );
 #html_tbl_print_header( lang_get('priority') );
 #if($s_show_priority == 'Y')
 print "<table class='sortable' rules=cols>" . NEWLINE;
 print "<thead>" . NEWLINE;
 print "<tr class=tbl_header>" . NEWLINE;
 html_tbl_print_sortable_header(lang_get('test_id'), TEST_ID, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('man_auto'));
 html_tbl_print_sortable_header(lang_get('test_name'), TEST_NAME, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('test_status'), TEST_STATUS, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('priority'), TEST_PRIORITY, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('ba_owner'), TEST_BA_OWNER, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('qa_owner'), TEST_QA_OWNER, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('tester'), TEST_TESTER, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('date_assigned'), TEST_DATE_ASSIGNED, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('date_expected'), TEST_DATE_EXPECTED, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('date_complete'), TEST_DATE_COMPLETE, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('ba_signoff_date'), TEST_BA_SIGNOFF, $order_by, $order_dir);
 html_tbl_print_sortable_header(lang_get('info'), TEST_COMMENTS, $order_by, $order_dir);
 #html_tbl_print_header( lang_get('test_id') );
 #html_tbl_print_header_not_sortable( lang_get('man_auto') );
 #html_tbl_print_header( lang_get('test_name') );
 #html_tbl_print_header( lang_get('test_status') );
 #html_tbl_print_header( lang_get('priority') );
 #html_tbl_print_header( lang_get('ba_owner') );
 #html_tbl_print_header( lang_get('qa_owner') );
 #html_tbl_print_header( lang_get('tester') );
 #html_tbl_print_header( lang_get('date_assigned') );
 #html_tbl_print_header( lang_get('date_expected') );
 #html_tbl_print_header( lang_get('date_complete') );
 #html_tbl_print_header( lang_get('ba_signoff_date') );
 #html_tbl_print_header_not_sortable( lang_get('info') );
 print "</tr>" . NEWLINE;
 print "</thead>" . NEWLINE;