1<?php 2/*========================================================================= 3 4 Program: CDash - Cross-Platform Dashboard System 5 Module: $Id$ 6 Language: PHP 7 Date: $Date$ 8 Version: $Revision$ 9 10 Copyright (c) 2002 Kitware, Inc. All rights reserved. 11 See Copyright.txt or http://www.cmake.org/HTML/Copyright.html for details. 12 13 This software is distributed WITHOUT ANY WARRANTY; without even 14 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 15 PURPOSE. See the above copyright notices for more information. 16 17=========================================================================*/ 18$noforcelogin = 1; 19include("cdash/config.php"); 20require_once("cdash/pdo.php"); 21include('login.php'); 22include_once("cdash/common.php"); 23include("cdash/version.php"); 24 25@$buildid = $_GET["buildid"]; 26if ($buildid != NULL) 27 { 28 $buildid = pdo_real_escape_numeric($buildid); 29 } 30 31@$date = $_GET["date"]; 32if ($date != NULL) 33 { 34 $date = htmlspecialchars(pdo_real_escape_string($date)); 35 } 36 37// Checks 38if(!isset($buildid) || !is_numeric($buildid)) 39 { 40 echo "Not a valid buildid!"; 41 return; 42 } 43 44$db = pdo_connect("$CDASH_DB_HOST", "$CDASH_DB_LOGIN","$CDASH_DB_PASS"); 45pdo_select_db("$CDASH_DB_NAME",$db); 46 47$build_array = pdo_fetch_array(pdo_query("SELECT * FROM build WHERE id='$buildid'")); 48$projectid = $build_array["projectid"]; 49if(!isset($projectid) || $projectid==0) 50 { 51 echo "This build doesn't exist. Maybe it has been deleted."; 52 exit(); 53 } 54 55checkUserPolicy(@$_SESSION['cdash']['loginid'],$projectid); 56 57$project = pdo_query("SELECT * FROM project WHERE id='$projectid'"); 58if(pdo_num_rows($project)>0) 59 { 60 $project_array = pdo_fetch_array($project); 61 $projectname = $project_array["name"]; 62 } 63 64$xml = begin_XML_for_XSLT(); 65$xml .= "<title>CDash : ".$projectname."</title>"; 66 67$date = get_dashboard_date_from_build_starttime($build_array["starttime"],$project_array["nightlytime"]); 68$xml .= get_cdash_dashboard_xml_by_name($projectname,$date); 69 70$siteid = $build_array["siteid"]; 71$buildtype = $build_array["type"]; 72$buildname = $build_array["name"]; 73$starttime = $build_array["starttime"]; 74 75// Menu 76$xml .= "<menu>"; 77$xml .= add_XML_value("back","index.php?project=".urlencode($projectname)."&date=".$date); 78$previousbuildid = get_previous_buildid($projectid,$siteid,$buildtype,$buildname,$starttime); 79if($previousbuildid>0) 80 { 81 $xml .= add_XML_value("previous","viewConfigure.php?buildid=".$previousbuildid); 82 } 83else 84 { 85 $xml .= add_XML_value("noprevious","1"); 86 } 87$xml .= add_XML_value("current","viewConfigure.php?buildid=".get_last_buildid($projectid,$siteid,$buildtype,$buildname,$starttime)); 88$nextbuildid = get_next_buildid($projectid,$siteid,$buildtype,$buildname,$starttime); 89if($nextbuildid>0) 90 { 91 $xml .= add_XML_value("next","viewConfigure.php?buildid=".$nextbuildid); 92 } 93else 94 { 95 $xml .= add_XML_value("nonext","1"); 96 } 97$xml .= "</menu>"; 98 99 // Build 100 $xml .= "<build>"; 101 $site_array = pdo_fetch_array(pdo_query("SELECT name FROM site WHERE id='$siteid'")); 102 $xml .= add_XML_value("site",$site_array["name"]); 103 $xml .= add_XML_value("siteid",$siteid); 104 $xml .= add_XML_value("buildname",$build_array["name"]); 105 $xml .= add_XML_value("buildid",$build_array["id"]); 106 $xml .= "</build>"; 107 108 $xml .= "<configure>"; 109 110 $configure = pdo_query("SELECT * FROM configure WHERE buildid='$buildid'"); 111 $configure_array = pdo_fetch_array($configure); 112 113 $xml .= add_XML_value("status",$configure_array["status"]); 114 $xml .= add_XML_value("command",$configure_array["command"]); 115 $xml .= add_XML_value("output",$configure_array["log"]); 116 117 $xml .= "</configure>"; 118 $xml .= "</cdash>"; 119 120// Now doing the xslt transition 121generate_XSLT($xml,"viewConfigure"); 122?> 123