<?php
/*******************************************************************************
 * Copyright (c) 2006 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
 *******************************************************************************/
require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menuitem.class.php");
class Menu {

	#*****************************************************************************
	#
	# menu.class.php
	#
	# Author: 		Denis Roy
	# Date			2004-09-11
	#
	# Description: Functions and modules related to menu objects
	#
	# HISTORY:
	#
	#*****************************************************************************	
	
	private $MenuItemList = array();
	
	private $projectBranding = "";

	function getProjectBranding() {
	  return $this->projectBranding;
	}

	function setProjectBranding($_projectBranding) {
	  $this->projectBranding = $_projectBranding;
	}
	
	function getMenuItemList() {
		return $this->MenuItemList;
	}
	
	function setMenuItemList($_MenuItemList) {
		$this->MenuItemList = $_MenuItemList;
	}
	
	# Main constructor
	function Menu() {

		$www_prefix = "";
		
		global $App;

		if(!isset($App)) {
			$App = new App();
		}
		$www_prefix = $App->getWWWPrefix();

		$MenuText = "Home";
		$MenuItem = new MenuItem($MenuText, $www_prefix . "/", "_self", 0);
		$this->MenuItemList[count($this->MenuItemList)] = $MenuItem;

		$MenuText = "Downloads";
		$MenuItem = new MenuItem($MenuText, $www_prefix . "/downloads/", "_self", 0);
		$this->MenuItemList[count($this->MenuItemList)] = $MenuItem;
		
		$MenuText = "Users";
		$MenuItem = new MenuItem($MenuText, $www_prefix . "/users/", "_self", 0);
		$this->MenuItemList[count($this->MenuItemList)] = $MenuItem;

		$MenuText = "Members";
		$MenuItem = new MenuItem($MenuText, $www_prefix . "/membership/", "_self", 0);
		$this->MenuItemList[count($this->MenuItemList)] = $MenuItem;

		$MenuText = "Committers";
		$MenuItem = new MenuItem($MenuText, $www_prefix . "/committers/", "_self", 0);
		$this->MenuItemList[count($this->MenuItemList)] = $MenuItem;

		$MenuText = "Resources";
		$MenuItem = new MenuItem($MenuText, $www_prefix . "/resources/", "_self", 0);
		$this->MenuItemList[count($this->MenuItemList)] = $MenuItem;

		$MenuText = "Projects";
		$MenuItem = new MenuItem($MenuText, $www_prefix . "/projects/", "_self", 0);
		$this->MenuItemList[count($this->MenuItemList)] = $MenuItem;

		$MenuText = "About Us";
		$MenuItem = new MenuItem($MenuText, $www_prefix . "/org/", "_self", 0);
		$this->MenuItemList[count($this->MenuItemList)] = $MenuItem;

	}
	
	function addMenuItem($_Text, $_URL, $_Target) {
		# Menu Items must be added at position 1 .. position 0 is dashboard, last position is Signout
		$MenuItem = new MenuItem($_Text, $_URL, $_Target, 0);
			
		# Add incoming menuitem
		$this->MenuItemList[count($this->MenuItemList)] = $MenuItem;
	}

	function getMenuItemCount() {
		return count($this->MenuItemList);
	}
	
	function getMenuItemAt($_Pos) {
		if($_Pos < $this->getMenuItemCount()) {
			return $this->MenuItemList[$_Pos];
		}
	}
	
	

}
?>