<?php
/*******************************************************************************
 * Copyright (c) 2009-2015 Eclipse Foundation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *    Denis Roy (Eclipse Foundation)- initial API and implementation
 *    Christopher Guindon (Eclipse Foundation) - Bug 432355 - Update l&f of the Eclipse site login
 *******************************************************************************/

  $theme = "solstice";
  if (isset($Nav) && $Nav instanceof Nav){
    $Nav->addCustomNav("Friends of Eclipse", "http://www.eclipse.org/donate/", "_self", 0);
    $Nav->addCustomNav("Bugzilla", "https://bugs.eclipse.org/bugs/", "_self", 0);
    $App->AddExtraJSFooter('<script type="text/javascript" src="public/js/script.min.js"></script>');
  }
  $App->AddExtraHtmlHeader('<link type="text/css" href="public/css/styles.min.css" rel="stylesheet"/>');
