<?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)
 */

require_once ($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php");

$theme = NULL;
$App->Promotion = TRUE;

$Nav = new Nav();
$Nav->setType('collapse');
$Nav->addNavSeparator("About Us", "/org/");

$Nav->addCustomNav("Members & Supporters", "/membership", "_self", 1);
$Nav->addCustomNav("Our Members", "/membership/exploreMembership.php", "_self", 2);
$Nav->addCustomNav("Corporate Sponsors", "/org/corporate_sponsors", "_self", 2);
$Nav->addCustomNav("In-kind Supporters", "/org/foundation/thankyou.php", "_self", 2);

$Nav->addCustomNav("Services", "#", "_self", 1);
$Nav->addCustomNav("IP Management", "/org/services/#IP_Management", "_self", 2);
$Nav->addCustomNav("Ecosystem Development", "/org/services/#Ecosystem", "_self", 2);
$Nav->addCustomNav("Development Process", "/org/services/#Development", "_self", 2);
$Nav->addCustomNav("IT Infrastructure", "/org/services/#IT", "_self", 2);

$Nav->addCustomNav("Our Team", "#", "_self", 1);
$Nav->addCustomNav("Eclipse Foundation Staff", "/org/foundation/staff.php", "_self", 2);
$Nav->addCustomNav("Contact us", "/org/foundation/contact.php", "_self", 2);

$Nav->addCustomNav("Governance", "#", "_self", 1);
$Nav->addCustomNav("Board of Directors", "/org/foundation/directors.php", "_self", 2);
$Nav->addCustomNav("Board of Directors Elections", "/org/elections/", "_self", 2);
$Nav->addCustomNav("Councils", "/org/foundation/council.php", "_self", 2);
$Nav->addCustomNav("Annual Report", "/org/foundation/reports/annual_report.php", "_self", 2);
$Nav->addCustomNav("Governance Documents", "/org/documents/", "_self", 2);
$Nav->addCustomNav("Meeting Minutes", "/org/foundation/minutes.php", "_self", 2);

$Nav->addCustomNav("Our Brand", "#", "_self", 1);
$Nav->addCustomNav("Logos and artwork", "/org/artwork/", "_self", 2);
$Nav->addCustomNav("Eclipse Foundation Brand Guidelines", "/legal/documents/eclipse_foundation_branding_guidelines.pdf", "_self", 2);
$Nav->addCustomNav("Trademark usage guidelines", "/legal/logo_guidelines.php", "_self", 2);
$Nav->addCustomNav("Writing style guide", "/org/documents/writting-style-guide/", "_self", 2);

$Nav->addCustomNav("Announcements", "#", "_self", 1);
$Nav->addCustomNav("Press releases", "/org/press-release/", "_self", 2);
$Nav->addCustomNav("PR guidelines", "/org/press-release/pressrelease_guidelines.php", "_self", 2);
$Nav->addCustomNav("2006 Archive", "/org/press-release/2006archive.php", "_self", 2);
$Nav->addCustomNav("2001-2005 Archive", "/org/press-release/main.html", "_self", 2);