diff --git a/indexAdTestTool.php b/indexAdTestTool.php
deleted file mode 100644
index 31fbb00..0000000
--- a/indexAdTestTool.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?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("_projectCommon.php");    # All on the same line to unclutter the user's desktop'
-
-	#*****************************************************************************
-	#
-	# index.php
-	#
-	# Author: 		Denis Roy
-	# Date:			2005-10-11
-	#
-	# Description: Main eclipse.org page
-	#
-	#****************************************************************************
-	
-	#
-	# Begin: page-specific settings.  Change these. 
-	$pageTitle 		= "Eclipse.org home";
-	$pageKeywords	= "eclipse,project,plug-ins,plugins,java,ide,swt,refactoring,free java ide,tools,platform,open source,development environment,development,ide";
-	$pageAuthor		= "Eclipse Foundation, Inc.";
-	
-	# Add page-specific Nav bars here
-	# Format is Link text, link URL (can be http://www.someothersite.com/), target (_self, _blank)
-	# $Nav->addCustomNav("My Link", "mypage.php", "_self");
-	# $Nav->addCustomNav("Google", "http://www.google.com/", "_blank");
-
-	# End: page-specific settings
-	#
-	
-	# Place your html content in a file called content/en_pagename.php
-	$_ADNO =  ($_GET['adNo'] ? $_GET['adNo'] : $_POST['adNo']);
-	include("content/en_adTestTool.php");
-
-	# Generate the web page
-	$App->PageRSS = "/home/eclipsenews.rss";
-	$App->PageRSSTitle = "Eclipse Foundation News";
-	$App->generatePage($theme, $Menu, NULL, $pageAuthor, $pageKeywords, $pageTitle, $html);
-?>
\ No newline at end of file
diff --git a/listAllAds.php b/listAllAds.php
index 0daffb6..350de2e 100644
--- a/listAllAds.php
+++ b/listAllAds.php
@@ -2,15 +2,15 @@
 
 echo '<html> <head><title>AD LINKS TEST PAGE</title></head><body>';
 
-echo 'vN-1 This utility simply creates links to all possible ads on eclipse.org for testing purposes.  Ensure the en_adTestTool.php file is 
-current with en_index.php to ensure tests are current.  <br>  PLEASE DO NOT CLICK THE ADS/LOGOS, please only click the links "Ad number" to bring you 
+echo 'vN-1 This utility simply creates links to all possible ads on eclipse.org for testing purposes.  Ensure the en_adTestTool.php file is
+current with en_index.php to ensure tests are current.  <br>  PLEASE DO NOT CLICK THE ADS/LOGOS, please only click the links "Ad number" to bring you
 to the home page showing the appropriate ad.';
 
 $documentRoot = $_SERVER['DOCUMENT_ROOT'];
 require_once ($documentRoot . "/membership/promo/promos.php");
 
 $promos = allPromos();
-$count = count($promos);	
+$count = count($promos);
 
 $totalWeight = 0;
 foreach ($promos as $v) {
@@ -18,17 +18,17 @@
 }
 
 echo '<br>TOTAL WEIGHT OF ALL ADS: ' . $totalWeight;
-		
+
 for ($i=0; $i < $count; $i++)
 {
- echo '<br><br><a href="http://www.eclipse.org/home/indexAdTestTool.php?adNo=' . $i . '">Ad number: ' . $i . '</a> Prob:' . round($promos[$i]['weight'] / $totalWeight * 100, 2) . '%'; 
- 
+ echo '<br><br><a href="http://www.eclipse.org/home/index.php?adNo=' . $i . '">Ad number: ' . $i . '</a> Prob:' . round($promos[$i]['weight'] / $totalWeight * 100, 2) . '%';
+
   switch ($promos[$i]['type'])
  {
  	case 'paid' :
  	case 'strat_ad' :
  		echo buildStrategicAd($promos[$i]);
- 		break; 
+ 		break;
  	case 'strategic' :
  		echo buildStrategic($promos[$i]);
  		break;
@@ -38,7 +38,7 @@
  	case 'donate_ad' :
  		echo buildDonateAd($promos[$i]);
  		break;
- 	
+
  }
 // echo '<br>' . $keys[$i];
 }
