<?php
/*******************************************************************************
 * Copyright (c) 2014 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://eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *    Christopher Guindon (Eclipse Foundation) - Initial implementation
 *******************************************************************************/
?>
<div class="container">
	<div class="row">
		<div class="col-sm-16 padding-bottom">
		<h1><?php print $pageTitle;?></h1>

		<p>
			Eclipse Foundation projects now cover runtimes; static and dynamic languages;
			thick-client, thin-client, and server-side frameworks; modeling and business
			reporting; embedded and mobile; and, yes, we still have the best Java IDE.
		</p>
		<p>
			This page is designed to be a gateway into the projects for users, adopters,
			team members, and the merely curious.
		</p>
		</div>
	</div>
	<div class="row">
	  <div class="col-sm-8">
      <?php include 'web-parts/proposals.php'; ?>
	  </div>
	  <div class="col-sm-8">
      <?php include 'web-parts/reviews.php'; ?>
	  </div>
	  <div class="col-sm-8">
      <?php include 'web-parts/activity.php'; ?>
	  </div>
	</div>
</div>