<?php  																														require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/app.class.php");	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/nav.class.php"); 	require_once($_SERVER['DOCUMENT_ROOT'] . "/eclipse.org-common/system/menu.class.php"); 	$App 	= new App();	$Nav	= new Nav();	$Menu 	= new Menu();		include($App->getProjectCommon());    # All on the same line to unclutter the user's desktop'

	#*****************************************************************************
	#
	# template.php
	#
	# Author: 		Denis Roy
	# Date:			2005-06-16
	#
	# Description: Type your page comments here - these are not sent to the browser
	#
	#
	#****************************************************************************
	
	#
	# Begin: page-specific settings.  Change these. 
	$pageTitle 		= "Eclipse Callisto Ecosystem News";
	$pageKeywords	= "eclipse callisto release download what is";
	$pageAuthor		= "Donald Smith";
	
	# Add page-specific Nav bars here
	# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank), level (1, 2 or 3)
	# $Nav->addNavSeparator("My Page Links", 	"downloads.php");
	# $Nav->addCustomNav("My Link", "mypage.php", "_self", 1);
	# $Nav->addCustomNav("Google", "http://www.google.com/", "_blank", 1);

	# End: page-specific settings
	#
	// This file is linked to from lots of different places.
	// Use absolute paths to make sure that we can actually test
	// that the file renders properly (i.e. testing using) "/index.php",
	// and "/home/index.php" both work.

	# Paste your HTML content between the EOHTML markers!	
	$html = <<<EOHTML
<div id="maincontent">
	<div id="midcolumn">
		<h1>$pageTitle</h1>
		<img src="../callisto_slice.jpg">
		<h2>Callisto Ecosystem</h2>
		<p>Have news or know of a great link to the Callisto Ecosystem?  Please email
			<a href="mailto:callisto.feedback@eclipse.org?subject=Callisto Ecosystem News">callisto.feedback@eclipse.org</a>!!!
		</p>
			
		<h2>Member News</h2>
		<p>
		<ul>
			<li> Today - <a href="mailto:callisto.feedback@eclipse.org?subject=Callisto Ecosystem News"> Your story here!</a> </li>
		</ul>	
		</p>

		<h2>Ecosystem News</h2>
		<p>
		<ul>
			<li> Mar 26, 2006 - <a href="http://www.adtmag.com/blogs/blog.aspx?a=18198">ADT Magazine Interview with Mike Milinkovich</a> </li>
			<li> Feb  8, 2006 - <a href="http://www.eclipsezone.com/eclipse/forums/t63440.html">EclipseZone Discussion</a> </li>

		</ul>	
		
		</p>

	</div>
</div>

	
EOHTML;


	# Generate the web page
	$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>