diff --git a/includes/app.php b/includes/app.php
index b112bd6..650a3bd 100644
--- a/includes/app.php
+++ b/includes/app.php
@@ -1,9 +1,7 @@
 <?php
 //this make the page not accessible outside the foundation
 
-if($_SERVER['REMOTE_ADDR'] != '206.191.52.58'){
-	exit();
-}
+
 function get_filename(){
 
 	$currentFile = $_SERVER["SCRIPT_NAME"];
@@ -14,16 +12,16 @@
 }
 
 
-/*START OF TEST DATA : This need's to be commented out before the code is commited to the server!*/
-$number_projects = rand(20,200);
-$friends = rand(0,444);
-//$donarlist = '<li>Jeffrey t Buyna - $35</li><li>Zoran Bebic - $35</li><li>Lee Jiyul - $35</li><li>Anonymous - $50</li><li>Mirko Friedenhagen - $40</li><li>Chris Charlton - $35</li><li>Gandon Sebastien - $35</li><li>Dmitry Mityaev - $40</li>';
+/*START OF TEST DATA : This need's to be commented out before the code is commited to the server!
+*$number_projects = rand(20,200);
+*$friends = rand(0,444);
+*$donarlist = '<li>Jeffrey t Buyna - $35</li><li>Zoran Bebic - $35</li><li>Lee Jiyul - $35</li><li>Anonymous - $50</li><li>Mirko Friedenhagen - $40</li><li>Chris Charlton - $35</li><li>Gandon Sebastien - $35</li><li>Dmitry Mityaev - $40</li>';
 /*END OF TEST DATA : This need's to be commented out before the code is commited to the server!*/
 
 
 $current_file = get_filename();
 $release = 'juno';
-$progress = ($friends/444)*100;
+
 
 if($_SERVER['REMOTE_ADDR'] == '206.191.52.58'){
 	include_once('friendsFunctions.php');
@@ -36,10 +34,10 @@
 		$projects = getAllProjectsInSimultaneousRelease($release);
 		sortProjects($projects, 'name');
 		$number_projects = count($projects);
-		$friends = getWantedCount();
+	
 		
 	}
 }
 
-
+$friends = getWantedCount();
 
