diff --git a/web/plugins/buildrepository/buildevent.class.php b/web/plugins/buildrepository/buildevent.class.php index c5761aa2e3..0ace1ad9f3 100644 --- a/web/plugins/buildrepository/buildevent.class.php +++ b/web/plugins/buildrepository/buildevent.class.php @@ -31,8 +31,10 @@ class BuildEvent private $startDate; private $authorName; private $authorEmail; + private $releaseTypeId; private $releaseNotesUri = NULL; + private $releaseChangeLogUri = NULL; // Event chains: private $prevForStartDate = NULL; @@ -107,6 +109,21 @@ public function setReleaseNotesUri($newUri) $this->releaseNotesUri = "$newUri"; } + public function hasReleaseChangeLogUri() + { + return !is_null($this->releaseChangeLogUri); + } + + public function releaseChangeLogUri() + { + return $this->releaseChangeLogUri; + } + + public function setReleaseChangeLogUri($newUri) + { + $this->releaseChangeLogUri = "$newUri"; + } + public function addPackage(&$package) { $this->packages[] = $package; diff --git a/web/plugins/buildrepository/buildlogparser.class.php b/web/plugins/buildrepository/buildlogparser.class.php index b2620afaca..956e9a3718 100644 --- a/web/plugins/buildrepository/buildlogparser.class.php +++ b/web/plugins/buildrepository/buildlogparser.class.php @@ -109,6 +109,10 @@ private static function parseBuildLogDOM(&$log, &$builds) { $pack->setReleaseNotesUri($build->releaseNotesUri()); } + if($build->hasReleaseChangeLogUri()) + { + $pack->setReleaseChangeLogUri($build->releaseChangeLogUri()); + } $build->addPackage($pack); } @@ -227,6 +231,10 @@ private static function parseBuildEvent(&$log_event) { $event->setReleaseNotesUri(clean_text($log_event->releaseNotes)); } + if(!empty($log_event->changeLog)) + { + $event->setReleaseChangeLogUri(clean_text($log_event->changeLog)); + } return $event; } diff --git a/web/plugins/buildrepository/buildrepository.php b/web/plugins/buildrepository/buildrepository.php index 0d04028b52..d6ab41e26d 100644 --- a/web/plugins/buildrepository/buildrepository.php +++ b/web/plugins/buildrepository/buildrepository.php @@ -592,6 +592,10 @@ private function chainBuildsByDoomsdayVersion() { $build->setReleaseNotesUri($pack->releaseNotesUri()); } + if($pack->hasReleaseChangeLogUri()) + { + $build->setReleaseChangeLogUri($pack->releaseChangeLogUri()); + } $build->addPackage($pack); } @@ -1297,6 +1301,10 @@ private function populateReleases(&$releases) { $build->setReleaseNotesUri($pack->releaseNotesUri()); } + if($pack->hasReleaseChangeLogUri()) + { + $build->setReleaseChangeLogUri($pack->releaseChangeLogUri()); + } $build->addPackage($pack); } diff --git a/web/plugins/buildrepository/packages/abstractpackage.class.php b/web/plugins/buildrepository/packages/abstractpackage.class.php index 71228db826..4e207b69bf 100644 --- a/web/plugins/buildrepository/packages/abstractpackage.class.php +++ b/web/plugins/buildrepository/packages/abstractpackage.class.php @@ -32,6 +32,7 @@ abstract class AbstractPackage extends BasePackage implements iDownloadable protected $directDownloadUri = NULL; protected $releaseNotesUri = NULL; + protected $releaseChangeLogUri = NULL; protected $compileLogUri = NULL; protected $compileWarnCount = NULL; @@ -57,6 +58,9 @@ public function populateGraphTemplate(&$tpl) $tpl['direct_download_uri'] = $this->directDownloadUri(); + if($this->hasReleaseChangeLogUri()) + $tpl['release_changeloguri'] = $this->releaseChangeLogUri; + if($this->hasReleaseNotesUri()) $tpl['release_notesuri'] = $this->releaseNotesUri; @@ -85,6 +89,21 @@ public function setReleaseNotesUri($newUri) $this->releaseNotesUri = "$newUri"; } + public function hasReleaseChangeLogUri() + { + return !is_null($this->releaseChangeLogUri); + } + + public function releaseChangeLogUri() + { + return $this->releaseChangeLogUri; + } + + public function setReleaseChangeLogUri($newUri) + { + $this->releaseChangeLogUri = "$newUri"; + } + public function hasCompileLogUri() { return !is_null($this->compileLogUri);