return; } $db = pdo_connect("{$CDASH_DB_HOST}", "{$CDASH_DB_LOGIN}", "{$CDASH_DB_PASS}"); pdo_select_db("{$CDASH_DB_NAME}", $db); $build_array = pdo_fetch_array(pdo_query("SELECT * FROM build WHERE id='{$buildid}'")); $projectid = $build_array["projectid"]; checkUserPolicy(@$_SESSION['cdash']['loginid'], $projectid); $siteid = $build_array["siteid"]; $buildtype = $build_array["type"]; $buildname = $build_array["name"]; $starttime = $build_array["starttime"]; $project_array = pdo_fetch_array(pdo_query("SELECT * FROM project WHERE id='{$projectid}'")); $projectname = $project_array["name"]; $xml = begin_XML_for_XSLT(); $xml .= "<title>CDash : " . $projectname . "</title>"; $date = get_dashboard_date_from_build_starttime($build_array["starttime"], $project_array["nightlytime"]); $xml .= get_cdash_dashboard_xml_by_name($projectname, $date); // Menu $xml .= "<menu>"; $xml .= add_XML_value("back", "index.php?project=" . urlencode($projectname) . "&date=" . $date); $previousbuildid = get_previous_buildid($projectid, $siteid, $buildtype, $buildname, $starttime); if ($previousbuildid > 0) { $xml .= add_XML_value("previous", "viewNotes.php?buildid=" . $previousbuildid); } else { $xml .= add_XML_value("noprevious", "1"); } $xml .= add_XML_value("current", "viewNotes.php?buildid=" . get_last_buildid($projectid, $siteid, $buildtype, $buildname, $starttime)); $nextbuildid = get_next_buildid($projectid, $siteid, $buildtype, $buildname, $starttime); if ($nextbuildid > 0) { $xml .= add_XML_value("next", "viewNotes.php?buildid=" . $nextbuildid); } else {
$xml .= '<buildid>' . $buildid . '</buildid>'; $siteid = $build_array['siteid']; $buildtype = $build_array['type']; $buildname = $build_array['name']; $starttime = $build_array['starttime']; $threshold = $project_array['coveragethreshold']; if ($build_array['groupid'] > 0) { $row = pdo_single_row_query('SELECT coveragethreshold FROM subprojectgroup WHERE projectid=' . qnum($projectid) . ' AND id=' . qnum($build_array['groupid'])); if (!empty($row) && isset($row['coveragethreshold'])) { $threshold = $row['coveragethreshold']; } } $xml .= '<menu>'; $xml .= add_XML_value('back', 'index.php?project=' . urlencode($projectname) . '&date=' . get_dashboard_date_from_build_starttime($build_array['starttime'], $project_array['nightlytime'])); $build = new Build(); $build->Id = $buildid; $previous_buildid = $build->GetPreviousBuildId(); $current_buildid = $build->GetCurrentBuildId(); $next_buildid = $build->GetNextBuildId(); if ($previous_buildid > 0) { $xml .= add_XML_value('previous', 'viewCoverage.php?buildid=' . $previous_buildid); } else { $xml .= add_XML_value('noprevious', '1'); } $xml .= add_XML_value('current', "viewCoverage.php?buildid={$current_buildid}"); if ($next_buildid > 0) { $xml .= add_XML_value('next', "viewCoverage.php?buildid={$next_buildid}"); } else { $xml .= add_XML_value('nonext', '1');
// feel free to expand as necessary. $defect_nice_names = array("FIM" => "Freeing Invalid Memory", "IPR" => "Invalid Pointer Read", "IPW" => "Invalid Pointer Write"); $project = pdo_query("SELECT * FROM project WHERE id='{$projectid}'"); if (pdo_num_rows($project) > 0) { $project_array = pdo_fetch_array($project); $projectname = $project_array["name"]; } $xml = begin_XML_for_XSLT(); $xml .= "<title>CDash : " . $projectname . "</title>"; $xml .= get_cdash_dashboard_xml_by_name($projectname, $date); $siteid = $build_array["siteid"]; $buildtype = $build_array["type"]; $buildname = $build_array["name"]; $starttime = $build_array["starttime"]; $xml .= "<menu>"; $xml .= add_XML_value("back", "index.php?project=" . urlencode($projectname) . "&date=" . get_dashboard_date_from_build_starttime($build_array["starttime"], $project_array["nightlytime"])); $previousbuildid = get_previous_buildid_dynamicanalysis($projectid, $siteid, $buildtype, $buildname, $starttime); if ($previousbuildid > 0) { $xml .= add_XML_value("previous", "viewDynamicAnalysis.php?buildid=" . $previousbuildid); } else { $xml .= add_XML_value("noprevious", "1"); } $xml .= add_XML_value("current", "viewDynamicAnalysis.php?buildid=" . get_last_buildid_dynamicanalysis($projectid, $siteid, $buildtype, $buildname, $starttime)); $nextbuildid = get_next_buildid_dynamicanalysis($projectid, $siteid, $buildtype, $buildname, $starttime); if ($nextbuildid > 0) { $xml .= add_XML_value("next", "viewDynamicAnalysis.php?buildid=" . $nextbuildid); } else { $xml .= add_XML_value("nonext", "1"); } $xml .= "</menu>"; // Build
$time_array = pdo_fetch_array(pdo_query("SELECT SUM(time) FROM build2test WHERE buildid='{$buildid}'")); $time = $time_array[0]; $response['totaltime'] = time_difference($time, true, '', true); while ($row = pdo_fetch_array($result)) { $currentStatus = $row["status"]; $previousStatus; $testName = $row["name"]; $test = array(); $test['name'] = $testName; if ($row["newstatus"]) { $test['new'] = "1"; } $test['execTimeFull'] = $row["time"]; $test['execTime'] = time_difference($row["time"], true, '', true); $test['details'] = $row["details"]; $testdate = get_dashboard_date_from_build_starttime($build_array["starttime"], $nightlytime); $summaryLink = "testSummary.php?project={$projectid}&name=" . urlencode($testName) . "&date={$testdate}"; $test['summaryLink'] = $summaryLink; $testid = $row["id"]; $detailsLink = "testDetails.php?test={$testid}&build={$buildid}"; $test['detailsLink'] = $detailsLink; $test['id'] = $testid; if ($projectshowtesttime) { if ($row["timestatus"] < $testtimemaxstatus) { $test['timestatus'] = "Passed"; $test['timestatusclass'] = "normal"; } else { $test['timestatus'] = "Failed"; $test['timestatusclass'] = "error"; } }
global $FormatTextForIphone; if (!isset($FormatTextForIphone)) { return $text; } $text = str_replace("\n", '<br/>', $text); return $text; } $response = begin_JSON_response(); $projectname = get_project_name($projectid); $response['title'] = "CDash : {$projectname}"; $previous_buildid = $build->GetPreviousBuildId(); $current_buildid = $build->GetCurrentBuildId(); $next_buildid = $build->GetNextBuildId(); $menu = array(); $nightlytime = get_project_property($projectname, 'nightlytime'); $menu['back'] = 'index.php?project=' . urlencode($projectname) . '&date=' . get_dashboard_date_from_build_starttime($build->StartTime, $nightlytime); if ($previous_buildid > 0) { $menu['previous'] = "buildSummary.php?buildid={$previous_buildid}"; // Find the last submit date. $previous_build = new Build(); $previous_build->Id = $previous_buildid; $previous_build->FillFromId($previous_build->Id); $lastsubmitdate = date(FMT_DATETIMETZ, strtotime($previous_build->StartTime . ' UTC')); } else { $menu['noprevious'] = '1'; $lastsubmitdate = 0; } $menu['current'] = "buildSummary.php?buildid={$current_buildid}"; if ($next_buildid > 0) { $menu['next'] = "buildSummary.php?buildid={$next_buildid}"; } else {
pdo_select_db("{$CDASH_DB_NAME}", $db); $build_array = pdo_fetch_array(pdo_query("SELECT * FROM build WHERE id='{$buildid}'")); $projectid = $build_array['projectid']; if (!isset($projectid) || $projectid == 0) { echo "This build doesn't exist. Maybe it has been deleted."; exit; } checkUserPolicy(@$_SESSION['cdash']['loginid'], $projectid); $project = pdo_query("SELECT * FROM project WHERE id='{$projectid}'"); if (pdo_num_rows($project) > 0) { $project_array = pdo_fetch_array($project); $projectname = $project_array['name']; } $xml = begin_XML_for_XSLT(); $xml .= '<title>CDash : ' . $projectname . '</title>'; $date = get_dashboard_date_from_build_starttime($build_array['starttime'], $project_array['nightlytime']); $xml .= get_cdash_dashboard_xml_by_name($projectname, $date); $siteid = $build_array['siteid']; $buildtype = $build_array['type']; $buildname = $build_array['name']; $starttime = $build_array['starttime']; // Menu $xml .= '<menu>'; $xml .= add_XML_value('back', 'index.php?project=' . urlencode($projectname) . '&date=' . $date); $build = new Build(); $build->Id = $buildid; $previous_buildid = $build->GetPreviousBuildId(); $next_buildid = $build->GetNextBuildId(); $current_buildid = $build->GetCurrentBuildId(); if ($previous_buildid > 0) { $xml .= add_XML_value('previous', "viewConfigure.php?buildid={$previous_buildid}");
$siteinformation_array['totalphysicalmemory'] = 'NA'; } if ($siteinformation_array['logicalprocessorsperphysical'] == -1) { $siteinformation_array['logicalprocessorsperphysical'] = 'NA'; } if ($siteinformation_array['processorclockfrequency'] == -1) { $siteinformation_array['processorclockfrequency'] = 'NA'; } } $xml = begin_XML_for_XSLT(); $xml .= '<title>CDash : ' . $sitename . '</title>'; @($projectid = pdo_real_escape_numeric($_GET['project'])); if ($projectid) { $project_array = pdo_fetch_array(pdo_query("SELECT name,nightlytime,showipaddresses FROM project WHERE id='{$projectid}'")); $xml .= '<backurl>index.php?project=' . urlencode($project_array['name']); $xml .= '&date=' . get_dashboard_date_from_build_starttime(gmdate(FMT_DATETIME, $currenttime), $project_array['nightlytime']); $xml .= '</backurl>'; } else { $xml .= '<backurl>index.php</backurl>'; } $xml .= "<title>CDash - {$sitename}</title>"; $xml .= '<menutitle>CDash</menutitle>'; $xml .= "<menusubtitle>{$sitename}</menusubtitle>"; $xml .= '<dashboard>'; $xml .= '<title>CDash</title>'; $apikey = ''; // Find the correct google map key foreach ($CDASH_GOOGLE_MAP_API_KEY as $key => $value) { if (strstr($_SERVER['HTTP_HOST'], $key) !== false) { $apikey = $value; break;
$etest['name'] = key($testname); $etest['testid'] = $testid; $etest['value'] = $val; $etests[] = $etest; } } $response['etests'] = $etests; // Gather test info $tests = array(); // Find the time to run all the tests $time_array = pdo_fetch_array(pdo_query("SELECT SUM(time) FROM build2test WHERE buildid='{$buildid}'")); $time = $time_array[0]; $response['totaltime'] = time_difference($time, true, '', true); $num_tests = pdo_num_rows($result); // Gather date information. $testdate = get_dashboard_date_from_build_starttime($starttime, $nightlytime); list($previousdate, $currentstarttime, $nextdate, $today) = get_dates($date, $nightlytime); $beginning_timestamp = $currentstarttime; $end_timestamp = $currentstarttime + 3600 * 24; $beginning_UTCDate = gmdate(FMT_DATETIME, $beginning_timestamp); $end_UTCDate = gmdate(FMT_DATETIME, $end_timestamp); $response['time_begin'] = $beginning_UTCDate; $response['time_end'] = $end_UTCDate; $labels_found = false; // Generate a response for each test found. while ($row = pdo_fetch_array($result)) { $marshaledTest = buildtest::marshal($row, $row['buildid'], $projectid, $projectshowtesttime, $testtimemaxstatus, $testdate); if ($marshaledTest['status'] == 'Passed') { $numPassed++; } elseif ($marshaledTest['status'] == 'Failed') { $numFailed++;