<?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'
	$pageTitle 		= "SMILA - Downloads archive";
	$pageKeywords	= "SMILA, Unified Information Access Architecture, unstructured information management, information logistics, semantic web, framework, platform, eclipse, big data, bigdata";
	$pageAuthor		= "Igor Novakovic";

	# Paste your HTML content between the EOHTML markers!
	$html = <<<EOHTML

	<div id="midcolumn">
		<h1>Downloads archive</h1>
		<h2>Releases</h2>
		<h3>0.9</h3>
		<p>
			<ul>
				<li>Linux 32 Bit: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.9/SMILA-incubation-0.9-linux.gtk.x86.zip">SMILA-incubation-0.9-linux.gtk.x86.zip</a></li>
				<li>Linux 64 Bit: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.9/SMILA-incubation-0.9-linux.gtk.x86_64.zip">SMILA-incubation-0.9-linux.gtk.x86_64.zip</a></li>
				<li>Mac OS X 64 Bit (Cocoa): <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.9/SMILA-incubation-0.9-macosx.cocoa.x86_64.zip">SMILA-incubation-0.9-macosx.cocoa.x86_64.zip</a></li>
				<li>Windows 32 Bit: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.9/SMILA-incubation-0.9-win32.win32.x86.zip">SMILA-incubation-0.9-win32.win32.x86.zip</a></li>
				<li>Windows 64 Bit: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.9/SMILA-incubation-0.9-win32.win32.x86_64.zip">SMILA-incubation-0.9-win32.win32.x86_64.zip</a></li>
				<li>SDK Examples (platform independent): <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.9/SMILA-0.9-integrator-examples.zip">SMILA-0.9-integrator-examples.zip</a></li>
			</ul>
		</p>

		<h3>0.8</h3>
		<p>
			<ul>
				<li>Linux 32 Bit: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.8/SMILA-incubation-0.8-linux.gtk.x86.zip">SMILA-incubation-0.8-linux.gtk.x86.zip</a></li>
				<li>Linux 64 Bit: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.8/SMILA-incubation-0.8-linux.gtk.x86_64.zip">SMILA-incubation-0.8-linux.gtk.x86_64.zip</a></li>
				<li>Mac OS X 64 Bit (Cocoa): <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.8/SMILA-incubation-0.8-macosx.cocoa.x86_64.zip">SMILA-incubation-0.8-macosx.cocoa.x86_64.zip</a></li>
				<li>Windows 32 Bit: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.8/SMILA-incubation-0.8-win32.win32.x86.zip">SMILA-incubation-0.8-win32.win32.x86.zip</a></li>
				<li>Windows 64 Bit: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.8/SMILA-incubation-0.8-win32.win32.x86_64.zip">SMILA-incubation-0.8-win32.win32.x86_64.zip</a></li>
			</ul>
		</p>

		<h3>0.7</h3>
		<p>
			<ul>
				<li>Linux binaries: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.7/SMILA-incubation-0.7-linux.gtk.x86.zip">SMILA-incubation-0.7-linux.gtk.x86.zip</a></li>
				<li>Win32 binaries: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/releases/0.7/SMILA-incubation-0.7-win32.win32.x86.zip">SMILA-incubation-0.7-win32.win32.x86.zip</a></li>
			</ul>
		</p>
		<h2>Milestones</h2>
		<h3>0.5 M3</h3>
		<p>
			<ul>
				<li>Linux binaries: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/milestones/0.5-M3/SMILA-incubation-0.5-M3-linux.gtk.x86.zip">SMILA-incubation-0.5-M3-linux.gtk.x86.zip</a></li>
				<li>Win32 binaries: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/milestones/0.5-M3/SMILA-incubation-0.5-M3-win32.win32.x86.zip">SMILA-incubation-0.5-M3-win32.win32.x86.zip</a></li>
			</ul>
		</p>
		<h3>0.5 M2</h3>
		<p>
			<ul>
				<li>Linux binaries: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/milestones/0.5-M2/SMILA-incubation-0.5-M2-linux.gtk.x86.zip">SMILA-incubation-0.5-M2-linux.gtk.x86.zip</a></li>
				<li>Win32 binaries: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/milestones/0.5-M2/SMILA-incubation-0.5-M2-win32.win32.x86.zip">SMILA-incubation-0.5-M2-win32.win32.x86.zip</a></li>
			</ul>
		</p>
		<h3>0.5 M1</h3>
		<p>
			<ul>
				<li>Linux binaries: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/milestones/0.5-M1/SMILA-incubation-0.5-M1-linux.gtk.x86.zip">SMILA-incubation-0.5-M1-linux.gtk.x86.zip</a></li>
				<li>Win32 binaries: <a href="http://www.eclipse.org/downloads/download.php?file=/rt/smila/milestones/0.5-M1/SMILA-incubation-0.5-M1-win32.win32.x86.zip">SMILA-incubation-0.5-M1-win32.win32.x86.zip</a></li>
			</ul>
		</p>
	</div>

EOHTML;

	include('rightColumn.php');
	$html .= $rightColumn;

	# Generate the web page
	$App->generatePage($theme, $Menu, $Nav, $pageAuthor, $pageKeywords, $pageTitle, $html);
?>
