<?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'


#
# Begin: page-specific settings.
$pageTitle 		= "Eclipse Planning Council";
$pageKeywords	= "Eclipse Planning Council";
$pageAuthor		= "David Williams";
$theme = "Nova";
# Paste your HTML content between the markers!
ob_start();
?>


	<!-- include empty lef nav col for now -->
	<div id="leftcol">
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	</div>
	
<div id="maincontent">
<div id="midcolumn">
<h1><?= $pageTitle ?></h1>
<h2>Purpose</h2>
<p>This 'planning' directory at this URL is to hold Planning Council specific web
pages and web apps. Most Planning Council information is available on
the <a href="http://wiki.eclipse.org/Planning_Council">Eclipse Planning
Council Wiki Pages</a></p>
</div>
</div> 

<?php
$html = ob_get_contents();
ob_end_clean();

# Generate the web page
$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
