echo 'No releases have been made yet.'; } if (empty($pkg['bug_link']) && Roadmap_Info::roadmapExists($name)) { echo '<br /><a href="/bugs/roadmap.php?package=' . urlencode($name) . '">Development Roadmap</a>'; $nextrelease = Roadmap_Info::nextRelease($name); if ($nextrelease) { $x = ceil((strtotime($nextrelease[1]) - time()) / 60 / 60 / 24); echo ' (next release: <strong><a href="/bugs/roadmap.php?package=' . urlencode($name) . '&roadmapdetail=' . $nextrelease[0] . '#a' . $nextrelease[0] . '">' . $nextrelease[0] . '</a></strong> in '; echo $x . ' day'; if ($x != 1) { echo 's'; } if ($x < 0) { echo '!!'; } echo ', ' . Roadmap_Info::percentDone($name) . '% complete)'; } } echo '</td>' . "\n"; echo '<td>' . "\n"; if (empty($pkg['bug_link'])) { $bugs = new PEAR_Bugs(); $buginfo = $bugs->packageBugStats($pkg['name']); $frinfo = $bugs->packageFeaturestats($pkg['name']); if (!$buginfo['count']) { echo 'No open bugs'; } if ($buginfo['count'] || $frinfo['count']) { echo '<ul>'; } if ($buginfo['count']) {
exit; } $roadmap->package = $_GET['package']; $roadmap->roadmap_version = $_GET['roadmap']; if (!$roadmap->find()) { response_header('Error :: No roadmap found'); report_error('Roadmap not found, cannot generate package.xml'); response_footer(); exit; } require 'roadmap/package-generator.php'; $gen = new Roadmap_Package_Generator($_GET['package']); $xml = $gen->getRoadmapPackage($_GET['roadmap']); if (!$xml) { require 'roadmap/info.php'; if (!Roadmap_Info::percentDone($_GET['package'], $_GET['roadmap'])) { $xml = 'Unable to generate package.xml, no bugs closed yet'; } else { $xml = 'Unable to generate package.xml, problems detected, please report to ' . PEAR_WEBMASTER_EMAIL . '.'; foreach ($gen->getErrors() as $error) { $xml .= '<br />' . htmlspecialchars($error['message']) . "<br />"; } } } $savant = Bug_DataObject::getSavant(); $savant->xml = $xml; $savant->package = $_GET['package']; $savant->roadmap = $_GET['roadmap']; $savant->display('roadmap_packagexml.php'); exit;