<?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'
/*******************************************************************************
 * Copyright (c) 2010
 * 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:
 *    
 *******************************************************************************/

	$pageTitle 		= "GEF Getting Involved";

	$html  = <<<EOHTML
<div id="midcolumn">
<h2>$pageTitle</h2>
<p>As every Eclipse project, GEF is strongly dependent on active support by its community. 
You may become part of that community and get involved by reporting bugs or enhancement request, 
by contributing patches, by participation in disscussions on the mailing list, or by supporting the maintaining of the GEF wiki.</p>

<h3>Contributor Guide</h3>
<p>If you want to know how to support us with triaging of bugs or contributing to GEF (e.g. by providing a patch to a known bug), please refer to the <a href="http://wiki.eclipse.org/GEF_Contributor_Guide">Contributor Guide</a> for further details.</p>

<h3>Contributor Mailing List</h3>
<p>Technical or organizational discussions (no help wanted questions) around the GEF project take place at the <a href="http://dev.eclipse.org/mailman/listinfo/gef-dev">GEF Developer Mailing List</a>.
It is intended for use by developers actually working on or otherwise contributing to day-to-day development of the GEF project itself. Older discussions can be found in the <a href="http://dev.eclipse.org/mhonarc/lists/gef-dev/maillist.html">Mailing List Archive</a>.</p>



</div>
EOHTML;

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