changeset 13:8261089e6f04

Changed to one single file per page
author Daniele Barchiesi <daniele.barchiesi@eecs.qmul.ac.uk>
date Wed, 13 Mar 2013 16:14:53 +0000
parents 8a595d55e245
children e48866766f56
files cherryFxTest.py templates.py
diffstat 2 files changed, 33 insertions(+), 254 deletions(-) [+]
line wrap: on
line diff
--- a/cherryFxTest.py	Tue Mar 12 15:11:39 2013 +0000
+++ b/cherryFxTest.py	Wed Mar 13 16:14:53 2013 +0000
@@ -103,19 +103,19 @@
 	def index2(self):
 			
 		cherrypy.session['page'] = 1
-		cherrypy.session['pages'] = 10
+		cherrypy.session['pages'] = 100
 		cherrypy.session['tests'] = len(cherrypy.session['audio'])
 		cherrypy.session['results'] = []
 		for cherrypy.session['n'] in xrange(cherrypy.session['tests']): cherrypy.session['results'].append([None])
 
 		cherrypy.session['ts'] = []
-		for cherrypy.session['k'] in xrange(10):
+		for cherrypy.session['k'] in xrange(1):
 			cherrypy.session['ts'].append(0)
 
                 print "################################# %s" %str(cherrypy.session['page'])
-                return audiotempl%TestPage.makeTuple(self, 10)
+                return audiotempl%TestPage.makeTuple(self, 1)
 		
-	def doAttrib(self, pageId, sessionId, submitButton, attribute1=None, attribute2=None, attribute3=None, attribute4=None, attribute5=None, attribute6=None, attribute7=None, attribute8=None, attribute9=None, attribute10=None):
+	def doAttrib(self, pageId, sessionId, submitButton, attribute1=None):
  			
 		print "################################# %s" %pageId
 
@@ -127,18 +127,10 @@
 		if cherrypy.session['sid'] != str(sessionId):
 			return TestPage.sessionError(self)
 
-		cherrypy.session['pos'] = 10 * (cherrypy.session['page'] - 1)		
+		cherrypy.session['pos'] = (cherrypy.session['page'] - 1)		
 	 
 		cherrypy.session['results'][cherrypy.session['pos']] = [cherrypy.session['audio'][cherrypy.session['pos']].split('/')[-1], int(attribute1)]
-		cherrypy.session['results'][cherrypy.session['pos']+1] = [cherrypy.session['audio'][cherrypy.session['pos']+1].split('/')[-1], int(attribute2)]
-		cherrypy.session['results'][cherrypy.session['pos']+2] = [cherrypy.session['audio'][cherrypy.session['pos']+2].split('/')[-1], int(attribute3)]
-		cherrypy.session['results'][cherrypy.session['pos']+3] = [cherrypy.session['audio'][cherrypy.session['pos']+3].split('/')[-1], int(attribute4)]
-		cherrypy.session['results'][cherrypy.session['pos']+4] = [cherrypy.session['audio'][cherrypy.session['pos']+4].split('/')[-1], int(attribute5)]
-		cherrypy.session['results'][cherrypy.session['pos']+5] = [cherrypy.session['audio'][cherrypy.session['pos']+5].split('/')[-1], int(attribute6)]
-		cherrypy.session['results'][cherrypy.session['pos']+6] = [cherrypy.session['audio'][cherrypy.session['pos']+6].split('/')[-1], int(attribute7)]
-		cherrypy.session['results'][cherrypy.session['pos']+7] = [cherrypy.session['audio'][cherrypy.session['pos']+7].split('/')[-1], int(attribute8)]
-		cherrypy.session['results'][cherrypy.session['pos']+8] = [cherrypy.session['audio'][cherrypy.session['pos']+8].split('/')[-1], int(attribute9)]
-		cherrypy.session['results'][cherrypy.session['pos']+9] = [cherrypy.session['audio'][cherrypy.session['pos']+9].split('/')[-1], int(attribute10)]
+		
 		resString = cherrypy.session['ip'] + '\n' + TestPage.outfileid + '\n' + cherrypy.session['userinfobox'] + '\n' + ',\n'.join(str(x) for x in cherrypy.session['results'])
 		print resString
 		
@@ -149,30 +141,17 @@
 		
 		cherrypy.session['page'] += 1
 		cherrypy.session['ts'] = []
-		cherrypy.session['npos'] = cherrypy.session['pos'] + 10
+		cherrypy.session['npos'] = cherrypy.session['pos'] + 1
 		
-		cherrypy.session['m'] = 10
+		cherrypy.session['m'] = 1
 		
 		for cherrypy.session['k'] in xrange(cherrypy.session['m']): cherrypy.session['ts'].append(0)
       #cherrypy.session['ts'].append(cherrypy.session['results'][cherrypy.session['npos']+cherrypy.session['k']])
 		
-		
-		return audiotempl%TestPage.makeTuple(self, cherrypy.session['m'])
-		
-		#if cherrypy.session['page'] != cherrypy.session['pages']	
-		#	return audiotempl%TestPage.makeTuple(self, cherrypy.session['m'])
-		#else
-		#	cherrypy.session['templ'] = ''
-		#	for cherrypy.session['n'] in xrange(cherrypy.session['tests']):
-		#		cherrypy.session['_templ'] = endtempl2 %(cherrypy.session['results'][cherrypy.session['n']][0], cherrypy.session['results'][cherrypy.session['n']][1], cherrypy.session['results'][cherrypy.session['n']][2], cherrypy.session['results'][cherrypy.session['n']][3], cherrypy.session['results'][cherrypy.session['n']][4])
-		#		cherrypy.session['templ'] += cherrypy.session['_templ'] 
-		#	try: 
-		#		TestPage.sendMail(self)
-		#	except:
-		#		print "WARNING: COULD NOT SEND RESULTS"
-		#		pass
-		#	cherrypy.session['sid'] = None
-		#	return endtempl%cherrypy.session['templ']
+		if cherrypy.session['page'] != 100:
+			return audiotempl%TestPage.makeTuple(self, cherrypy.session['m'])
+	        else:
+			return endtempl%resString
 
 	index.exposed = True
 	doAttrib.exposed = True
@@ -184,7 +163,7 @@
 		cherrypy.session['ts'].append(cherrypy.session['page'])
 		cherrypy.session['ts'].append(cherrypy.session['pages'])
 		for cherrypy.session['k'] in xrange(cherrypy.session['nr']):
-			pos = 10 * (cherrypy.session['page'] - 1) + cherrypy.session['k']
+			pos = (cherrypy.session['page'] - 1) + cherrypy.session['k']
 			for n in xrange(3): cherrypy.session['ts'].append(cherrypy.session['audio'][pos])
 		cherrypy.session['ts'].append(cherrypy.session['page'])
 		cherrypy.session['ts'].append(cherrypy.session['sid'])
@@ -209,26 +188,26 @@
 
 	def sendMail(TestPage):
 		cherrypy.session['file'] = './sessions/%s/%s.txt'%(cherrypy.session['sid'], TestPage.outfileid)
-		username = 'eecsqmul@gmail.com'	 
-		password = 'perceptual'
-		fro = 'FX-Test <eecsqmul@gmail.com>'
-		to = ['thomas.wilmering@eecs.qmul.ac.uk', 'gyorgy.fazekas@eecs.qmul.ac.uk']
-		msg = MIMEMultipart()
-		msg['From'] = fro
-		msg['To'] = COMMASPACE.join(to)
-		msg['Date'] = formatdate(localtime=True)
-		msg['Subject'] = 'fx perceptual listening test'
-		msg.attach( MIMEText('Attached are new results from the listening test.'))
-		part = MIMEBase('application', "octet-stream")
-		part.set_payload( open(cherrypy.session['file'],"rb").read() )
-		Encoders.encode_base64(part)
-		part.add_header('Content-Disposition', 'attachment; filename="%s"' % cherrypy.session['file'])
-		msg.attach(part)
-		server = smtplib.SMTP('smtp.gmail.com:587')
-		server.starttls()
-		server.login(username,password)
-		server.sendmail(fro, to, msg.as_string() )
-		server.close()
+#		username = 'eecsqmul@gmail.com'
+#		password = 'perceptual'
+#		fro = 'FX-Test <eecsqmul@gmail.com>'
+#		to = ['thomas.wilmering@eecs.qmul.ac.uk', 'gyorgy.fazekas@eecs.qmul.ac.uk']
+#		msg = MIMEMultipart()
+#		msg['From'] = fro
+#		msg['To'] = COMMASPACE.join(to)
+#		msg['Date'] = formatdate(localtime=True)
+#		msg['Subject'] = 'fx perceptual listening test'
+#		msg.attach( MIMEText('Attached are new results from the listening test.'))
+#		part = MIMEBase('application', "octet-stream")
+#		part.set_payload( open(cherrypy.session['file'],"rb").read() )
+#		Encoders.encode_base64(part)
+#		part.add_header('Content-Disposition', 'attachment; filename="%s"' % cherrypy.session['file'])
+#		msg.attach(part)
+#		server = smtplib.SMTP('smtp.gmail.com:587')
+#		server.starttls()
+#		server.login(username,password)
+#		server.sendmail(fro, to, msg.as_string() )
+#		server.close()
 
 
 class OutPage:
--- a/templates.py	Tue Mar 12 15:11:39 2013 +0000
+++ b/templates.py	Wed Mar 13 16:14:53 2013 +0000
@@ -20,15 +20,6 @@
 	
 	window.onload = function () {
 	document.getElementById("a1")[%i].selected = true;
-	document.getElementById("a2")[%i].selected = true;
-	document.getElementById("a3")[%i].selected = true;
-	document.getElementById("a4")[%i].selected = true;
-	document.getElementById("a5")[%i].selected = true;
-	document.getElementById("a6")[%i].selected = true;
-	document.getElementById("a7")[%i].selected = true;
-	document.getElementById("a8")[%i].selected = true;
-	document.getElementById("a9")[%i].selected = true;
-	document.getElementById("a10")[%i].selected = true;
 	}
 
 	</script>
@@ -69,188 +60,7 @@
    <option value="9">tube</option>
 	<option value="10">tube station</option>
    </select>
-<br>
-
-   <audio id="audio player 2" controls>
-   <source src="../AASPAudio/%s.wav" type="audio/wav">
-   <object class="playerpreview" type="application/x-shockwave-flash" data="player_mp3_mini.swf" width="200" height="20"><param name="movie" value="player_mp3_mini.swf" /><param name="bgcolor" value="#085c68" /><param name="FlashVars" value="mp3=../AASPAudio/%s.wav" /><embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200" height="20" name="movie" align="" type="application/x-shockwave-flash" flashvars="mp3=../AASPAudio/%s.wav" /></object>
-   </audio>
-
-   <select name="attribute2" id="a2">
-   <option value="0"></option>
-	<option value="1">bus</option>
-   <option value="2">busy street</option>
-   <option value="3">office</option>
-	<option value="4">open air market</option>
-	<option value="5">park</option>
-	<option value="6">quiet street</option>
-	<option value="7">restaurant</option>
-	<option value="8">supermarket</option>
-   <option value="9">tube</option>
-	<option value="10">tube station</option>
-   </select>
-<br>
-
-   <audio id="audio player 3" controls>
-   <source src="../AASPAudio/%s.wav" type="audio/wav">
-   <object class="playerpreview" type="application/x-shockwave-flash" data="player_mp3_mini.swf" width="200" height="20"><param name="movie" value="player_mp3_mini.swf" /><param name="bgcolor" value="#085c68" /><param name="FlashVars" value="mp3=../AASPAudio/%s.wav" /><embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200" height="20" name="movie" align="" type="application/x-shockwave-flash" flashvars="mp3=../AASPAudio/%s.wav" /></object>
-   </audio>
-
-   <select name="attribute3" id="a3">
-   <option value="0"></option>
-	<option value="1">bus</option>
-   <option value="2">busy street</option>
-   <option value="3">office</option>
-	<option value="4">open air market</option>
-	<option value="5">park</option>
-	<option value="6">quiet street</option>
-	<option value="7">restaurant</option>
-	<option value="8">supermarket</option>
-   <option value="9">tube</option>
-	<option value="10">tube station</option>
-   </select>
-<br>
-
-   <audio id="audio player 4" controls>
-   <source src="../AASPAudio/%s.wav" type="audio/wav">
-   <object class="playerpreview" type="application/x-shockwave-flash" data="player_mp3_mini.swf" width="200" height="20"><param name="movie" value="player_mp3_mini.swf" /><param name="bgcolor" value="#085c68" /><param name="FlashVars" value="mp3=../AASPAudio/%s.wav" /><embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200" height="20" name="movie" align="" type="application/x-shockwave-flash" flashvars="mp3=../AASPAudio/%s.wav" /></object>
-   </audio>
-
-   <select name="attribute4" id="a4">
-   <option value="0"></option>
-	<option value="1">bus</option>
-   <option value="2">busy street</option>
-   <option value="3">office</option>
-	<option value="4">open air market</option>
-	<option value="5">park</option>
-	<option value="6">quiet street</option>
-	<option value="7">restaurant</option>
-	<option value="8">supermarket</option>
-   <option value="9">tube</option>
-	<option value="10">tube station</option>
-   </select>
-<br>
-
-   <audio id="audio player 5" controls>
-   <source src="../AASPAudio/%s.wav" type="audio/wav">
-   <object class="playerpreview" type="application/x-shockwave-flash" data="player_mp3_mini.swf" width="200" height="20"><param name="movie" value="player_mp3_mini.swf" /><param name="bgcolor" value="#085c68" /><param name="FlashVars" value="mp3=../AASPAudio/%s.wav" /><embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200" height="20" name="movie" align="" type="application/x-shockwave-flash" flashvars="mp3=../AASPAudio/%s.wav" /></object>
-   </audio>
-
-   <select name="attribute5" id="a5">
-   <option value="0"></option>
-	<option value="1">bus</option>
-   <option value="2">busy street</option>
-   <option value="3">office</option>
-	<option value="4">open air market</option>
-	<option value="5">park</option>
-	<option value="6">quiet street</option>
-	<option value="7">restaurant</option>
-	<option value="8">supermarket</option>
-   <option value="9">tube</option>
-	<option value="10">tube station</option>
-   </select>
-<br>
-
-   <audio id="audio player 6" controls>
-   <source src="../AASPAudio/%s.wav" type="audio/wav">
-   <object class="playerpreview" type="application/x-shockwave-flash" data="player_mp3_mini.swf" width="200" height="20"><param name="movie" value="player_mp3_mini.swf" /><param name="bgcolor" value="#085c68" /><param name="FlashVars" value="mp3=../AASPAudio/%s.wav" /><embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200" height="20" name="movie" align="" type="application/x-shockwave-flash" flashvars="mp3=../AASPAudio/%s.wav" /></object>
-   </audio>
-
-   <select name="attribute6" id="a6">
-   <option value="0"></option>
-	<option value="1">bus</option>
-   <option value="2">busy street</option>
-   <option value="3">office</option>
-	<option value="4">open air market</option>
-	<option value="5">park</option>
-	<option value="6">quiet street</option>
-	<option value="7">restaurant</option>
-	<option value="8">supermarket</option>
-   <option value="9">tube</option>
-	<option value="10">tube station</option>
-   </select>
-<br>
-
-   <audio id="audio player 7" controls>
-   <source src="../AASPAudio/%s.wav" type="audio/wav">
-   <object class="playerpreview" type="application/x-shockwave-flash" data="player_mp3_mini.swf" width="200" height="20"><param name="movie" value="player_mp3_mini.swf" /><param name="bgcolor" value="#085c68" /><param name="FlashVars" value="mp3=../AASPAudio/%s.wav" /><embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200" height="20" name="movie" align="" type="application/x-shockwave-flash" flashvars="mp3=../AASPAudio/%s.wav" /></object>
-   </audio>
-   <select name="attribute7" id="a7">
-   <option value="0"></option>
-	<option value="1">bus</option>
-   <option value="2">busy street</option>
-   <option value="3">office</option>
-	<option value="4">open air market</option>
-	<option value="5">park</option>
-	<option value="6">quiet street</option>
-	<option value="7">restaurant</option>
-	<option value="8">supermarket</option>
-   <option value="9">tube</option>
-	<option value="10">tube station</option>
-   </select>
-<br>
-
-   <audio id="audio player 8" controls>
-   <source src="../AASPAudio/%s.wav" type="audio/wav">
-   <object class="playerpreview" type="application/x-shockwave-flash" data="player_mp3_mini.swf" width="200" height="20"><param name="movie" value="player_mp3_mini.swf" /><param name="bgcolor" value="#085c68" /><param name="FlashVars" value="mp3=../AASPAudio/%s.wav" /><embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200" height="20" name="movie" align="" type="application/x-shockwave-flash" flashvars="mp3=../AASPAudio/%s.wav" /></object>
-   </audio>
-
-   <select name="attribute8" id="a8">
-   <option value="0"></option>
-	<option value="1">bus</option>
-   <option value="2">busy street</option>
-   <option value="3">office</option>
-	<option value="4">open air market</option>
-	<option value="5">park</option>
-	<option value="6">quiet street</option>
-	<option value="7">restaurant</option>
-	<option value="8">supermarket</option>
-   <option value="9">tube</option>
-	<option value="10">tube station</option>
-   </select>
-<br>
-
-   <audio id="audio player 9" controls>
-   <source src="../AASPAudio/%s.wav" type="audio/wav">
-   <object class="playerpreview" type="application/x-shockwave-flash" data="player_mp3_mini.swf" width="200" height="20"><param name="movie" value="player_mp3_mini.swf" /><param name="bgcolor" value="#085c68" /><param name="FlashVars" value="mp3=../AASPAudio/%s.wav" /><embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200" height="20" name="movie" align="" type="application/x-shockwave-flash" flashvars="mp3=../AASPAudio/%s.wav" /></object>
-   </audio>
-
-   <select name="attribute9" id="a9">
-   <option value="0"></option>
-	<option value="1">bus</option>
-   <option value="2">busy street</option>
-   <option value="3">office</option>
-	<option value="4">open air market</option>
-	<option value="5">park</option>
-	<option value="6">quiet street</option>
-	<option value="7">restaurant</option>
-	<option value="8">supermarket</option>
-   <option value="9">tube</option>
-	<option value="10">tube station</option>
-   </select>
-<br>
-
-   <audio id="audio player 10" controls>
-   <source src="../AASPAudio/%s.wav" type="audio/wav">
-   <object class="playerpreview" type="application/x-shockwave-flash" data="player_mp3_mini.swf" width="200" height="20"><param name="movie" value="player_mp3_mini.swf" /><param name="bgcolor" value="#085c68" /><param name="FlashVars" value="mp3=../AASPAudio/%s.wav" /><embed href="player_mp3_mini.swf" bgcolor="#085c68" width="200" height="20" name="movie" align="" type="application/x-shockwave-flash" flashvars="mp3=../AASPAudio/%s.wav" /></object>
-   </audio>
-
-   <select name="attribute10" id="a10">
-   <option value="0"></option>
-	<option value="1">bus</option>
-   <option value="2">busy street</option>
-   <option value="3">office</option>
-	<option value="4">open air market</option>
-	<option value="5">park</option>
-	<option value="6">quiet street</option>
-	<option value="7">restaurant</option>
-	<option value="8">supermarket</option>
-   <option value="9">tube</option>
-	<option value="10">tube station</option>
-   </select>
    
-   </p>
-   <br>
 	<input type="hidden" name="pageId" value="%i">
 	<input type="hidden" name="sessionId" value="%s">
 	
@@ -263,16 +73,6 @@
    var frmvalidator  = new Validator("attributes");
    
 	frmvalidator.addValidation("attribute1","dontselect=0", "Please select at least one main attribute for each item");
-	frmvalidator.addValidation("attribute2","dontselect=0", "Please select at least one main attribute for each item");
-	frmvalidator.addValidation("attribute3","dontselect=0", "Please select at least one main attribute for each item");
-	frmvalidator.addValidation("attribute4","dontselect=0", "Please select at least one main attribute for each item");
-	frmvalidator.addValidation("attribute5","dontselect=0", "Please select at least one main attribute for each item");
-	frmvalidator.addValidation("attribute6","dontselect=0", "Please select at least one main attribute for each item");
-	frmvalidator.addValidation("attribute7","dontselect=0", "Please select at least one main attribute for each item");
-	frmvalidator.addValidation("attribute8","dontselect=0", "Please select at least one main attribute for each item");
-	frmvalidator.addValidation("attribute9","dontselect=0", "Please select at least one main attribute for each item");
-	frmvalidator.addValidation("attribute10","dontselect=0", "Please select at least one main attribute for each item");
-   
 	//]]></script>
 	
 	</div>