<?php
/**
 * Copyright (c) 2005, 2018 Eclipse Foundation.
 *
 * This program and the accompanying materials are made
 * available under the terms of the Eclipse Public License 2.0
 * which is available at https://www.eclipse.org/legal/epl-2.0/
 *
 * Contributors:
 *   Eric Poirier (Eclipse Foundation)
 *
 * SPDX-License-Identifier: EPL-2.0
 */

// 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/
$theme = NULL;

// Define your project-wide Nav bars here.
// Format is Link text, link URL (can be http://www.someothersite.com/), target
// (_self, _blank)
$Nav->addNavSeparator("About Us", "/org/");
$Nav->addCustomNav("Annual Report", "/org/foundation/reports/annual_report.php", "_self", 1);
$Nav->addCustomNav("Foundation", "/org/foundation/", "_self", 1);
$Nav->addCustomNav("Governance", "/org/documents/", "_self", 1);
$Nav->addCustomNav("Legal Resources", "/legal/", "_self", 1);
$Nav->addCustomNav("Contact Us", "/org/foundation/contact.php", "_self", 1);

?>
