<?php

	# Set the theme for your project's web pages.
	# See the Committer Tools "How Do I" for list of themes
	# https://dev.eclipse.org/committers/
	# Optional: defaults to system theme 
	$theme = "";

	# Define your project-wide Nav bars here.
	# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
    # these are optional
    $Nav->addNavSeparator("Photran",    "/photran/index.php");
    $Nav->addCustomNav("Home",          "/photran/index.php", "_self", 2);
    $Nav->addCustomNav("Screenshots",   "/photran/screenshots.php", "_self", 2);
    $Nav->addCustomNav("Download",      "/photran/download.php", "_self", 2);
    $Nav->addCustomNav("Mailing Lists", "/photran/mailinglists.php", "_self", 2);
    $Nav->addCustomNav("Report a Bug",  "https://bugs.eclipse.org/bugs/enter_bug.cgi?assigned_to=photran-inbox%40eclipse.org&component=Photran.Unknown&product=PTP&version=6.0", "_self", 2);
    $Nav->addCustomNav("Request a New Feature",  "https://bugs.eclipse.org/bugs/enter_bug.cgi?assigned_to=photran-inbox%40eclipse.org&component=Photran.Unknown&bug_severity=enhancement&product=PTP&version=6.0", "_self", 2);
    #$Nav->addCustomNav("Documentation", "/photran/documentation.php", "_self", 2);
    #$Nav->addCustomNav("Refactoring",   "/photran/refactoring.php", "_self", 3);
    #$Nav->addCustomNav("Wiki",          "http://wiki.eclipse.org/index.php?title=Parallel_Tools_Platform#Photran_Information", "_self", 2);
    $Nav->addCustomNav("Wiki",          "http://wiki.eclipse.org/PTP/photran/", "_self", 2);
    #$Nav->addCustomNav("Installation",  "http://wiki.eclipse.org/PTP/photran/installation", "_self", 3);
    $Nav->addCustomNav("Documentation", "http://wiki.eclipse.org/PTP/photran/documentation", "_self", 3);
    $Nav->addCustomNav("FAQ",           "http://wiki.eclipse.org/PTP/photran/faq", "_self", 3);
    $Nav->addCustomNav("People",        "/photran/contributors.php", "_self", 2);
    $Nav->addCustomNav("Internals",     "/photran/contributorinfo.php", "_self", 2);
    #$Nav->addCustomNav("New Contributors",    "/photran/newcontributors.php", "_self", 3);
    #$Nav->addCustomNav("Project Plan",    "/photran/project-info/project-plan.php", "_self", 3);
    #$Nav->addCustomNav("IP Log",        "/photran/project-info/ip-log.php", "_self", 3);
    $Nav->addCustomNav("About This Project", "/projects/project_summary.php?projectid=tools.ptp.photran", "_self", 2);
?>
