changeset 882:594e617b75ad

PythonServer now supports pseudorandom page setup using preconfigured XML files. Set the PSEUDO_PATH in the python file, it will cycle through all .xml files in there. Index based off file save number. Set the .html url to /pseudo.xml to trigger
author Nicholas Jillings <nicholas.jillings@eecs.qmul.ac.uk>
date Sun, 28 Jun 2015 10:33:47 +0100
parents 2580a999670f
children cd20f076f6a3
files index.html pythonServer.py
diffstat 2 files changed, 23 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/index.html	Fri Jun 26 12:25:36 2015 +0100
+++ b/index.html	Sun Jun 28 10:33:47 2015 +0100
@@ -25,7 +25,7 @@
 		</script>
 		<!-- Uncomment the following script for automatic loading of projects -->
 		<script>
-			url = 'example_eval/project.xml'; //Project XML document location
+			url = '/pseudo.xml'; //Project XML document location
 			loadProjectSpec(url);
 		</script>
 		
--- a/pythonServer.py	Fri Jun 26 12:25:36 2015 +0100
+++ b/pythonServer.py	Sun Jun 28 10:33:47 2015 +0100
@@ -1,17 +1,26 @@
 import BaseHTTPServer
 from os import walk
 from os import path
+from os import listdir
 import urllib2
 import pickle
 import datetime
 
+PSEUDO_PATH = 'example_eval/'
+pseudo_files = []
+for filename in listdir(PSEUDO_PATH):
+    if filename.endswith('.xml'):
+        pseudo_files.append(filename)
+
 curSaveIndex = 0;
 curFileName = 'test-0.xml'
 while(path.isfile('saves/'+curFileName)):
 	curSaveIndex += 1;
 	curFileName = 'test-'+str(curSaveIndex)+'.xml'
 
-print curFileName
+print "Next save - " + curFileName
+pseudo_index = curSaveIndex % len(pseudo_files)
+print "Next test - " + pseudo_files[pseudo_index]
 
 def send404(s):
 	s.send_response(404)
@@ -59,19 +68,28 @@
 
 class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
 	def do_HEAD(s):
-			s.send_response(200)
-			s.send_header("Content-type", "text/html")
-			s.end_headers()
+		s.send_response(200)
+		s.send_header("Content-type", "text/html")
+		s.end_headers()
 	def do_GET(request):
+		global pseudo_index
+		global pseudo_files
+		global PSEUDO_PATH
 		if(request.client_address[0] == "127.0.0.1"):
 			if (request.path == "/favicon.ico"):
 				send404(request)
 			else:
 				if (request.path == '/'):
 					request.path = '/index.html'
+				elif (request.path == '/pseudo.xml'):
+					request.path = '/'+PSEUDO_PATH + pseudo_files[pseudo_index]
+					print request.path
+					pseudo_index += 1
+					pseudo_index %= len(pseudo_files)
 				processFile(request)
 		else:
 			send404(request)
+
 	def do_POST(request):
 		if(request.client_address[0] == "127.0.0.1"):
 			if (request.path == "/save"):