function finalize(&$nav = "", &$playOrder = 0, $level = 0)
{
$maxLevel = $level;
$levelAdjust = 0;
if ($this->isNavHidden) {
return $maxLevel;
}
if (isset($this->contentSrc)) {
$playOrder++;
if ($this->id == null) {
$this->id = "navpoint-" . $playOrder;
}
$nav .= str_repeat("\t", $level) . "\t\t<navPoint id=\"" . $this->id . "\" playOrder=\"" . $playOrder . "\">\n" . str_repeat("\t", $level) . "\t\t\t<navLabel>\n" . str_repeat("\t", $level) . "\t\t\t\t<text>" . $this->label . "</text>\n" . str_repeat("\t", $level) . "\t\t\t</navLabel>\n" . str_repeat("\t", $level) . "\t\t\t<content src=\"" . $this->contentSrc . "\" />\n";
} else {
$levelAdjust++;
}
if (sizeof($this->navPoints) > 0) {
$maxLevel++;
foreach ($this->navPoints as $navPoint) {
/** @var $navPoint NavPoint */
$retLevel = $navPoint->finalize($nav, $playOrder, $level + 1 + $levelAdjust);
if ($retLevel > $maxLevel) {
$maxLevel = $retLevel;
}
}
}
if (isset($this->contentSrc)) {
$nav .= str_repeat("\t", $level) . "\t\t</navPoint>\n";
}
return $maxLevel;
}