<?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'
	
    $App->AddExtraHtmlHeader('<!--[if lt IE 9]><script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script><![endif]-->' . "\n\t");
    $App->AddExtraHtmlHeader('<link href="assets/css/bootstrap.css" rel="stylesheet"/>' . "\n\t");
    $App->AddExtraHtmlHeader('<link href="assets/css/modeling.css" rel="stylesheet"/>' . "\n\t");
    $App->AddExtraHtmlHeader('<script src="assets/js/jquery.js"></script>' . "\n\t");
    $App->AddExtraHtmlHeader('<script src="assets/js/bootstrap-collapse.js"></script>' . "\n\t");
	
	# Paste your HTML content between the EOHTML markers!
	$html = file_get_contents('_index.html');

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