changeset 1444:5590afd89544

Merge. Reload will only generate alert if test is loaded.
author Nicholas Jillings <nickjillings@users.noreply.github.com>
date Fri, 18 Dec 2015 18:31:26 +0000
parents 7fba5afe041e (diff) bbfcb31c37e4 (current diff)
children dd4fed6a03f2
files CITING.txt README.txt ape.js core.js docs/Instructions/Instructions.pdf docs/Instructions/Instructions.tex example_eval/mushra_example.xml example_eval/project.xml index.html mushra.css mushra.js scripts/generate_report.py scripts/score_parser.py
diffstat 5 files changed, 42 insertions(+), 12 deletions(-) [+]
line wrap: on
line diff
--- a/CITING.txt	Fri Dec 18 18:28:06 2015 +0000
+++ b/CITING.txt	Fri Dec 18 18:31:26 2015 +0000
@@ -5,7 +5,7 @@
 
 Feel free to let us know how you have used it! We highly welcome any kind of feedback, bug reports and feature requests. 
 
-n.g.r.jillings@se14.qmul.ac.uk
+nicholas.jillings@mail.bcu.ac.uk
 b.deman@qmul.ac.uk
 d.j.moffat@qmul.ac.uk
 joshua.reiss@qmul.ac.uk
\ No newline at end of file
--- a/ape.js	Fri Dec 18 18:28:06 2015 +0000
+++ b/ape.js	Fri Dec 18 18:31:26 2015 +0000
@@ -308,7 +308,7 @@
 					pagecountHolder = document.createElement('div');
 					pagecountHolder.id = 'page-count';
 				}
-				pagecountHolder.innerHTML = '<span>Test '+(audioHolderObject.presentedId+1)+' of '+specification.audioHolders.length+'</span>';
+				pagecountHolder.innerHTML = '<span>Page '+(audioHolderObject.presentedId+1)+' of '+specification.audioHolders.length+'</span>';
 				var inject = document.getElementById('interface-buttons');
 				inject.appendChild(pagecountHolder);
 			}
--- a/docs/Instructions/Instructions.tex	Fri Dec 18 18:28:06 2015 +0000
+++ b/docs/Instructions/Instructions.tex	Fri Dec 18 18:31:26 2015 +0000
@@ -32,7 +32,7 @@
 
 The tool is available in its entirety including source code on \url{https://code.soundsoftware.ac.uk/projects/webaudioevaluationtool/}, under the GNU General Public License v3.0 (\url{http://choosealicense.com/licenses/gpl-3.0/}), see also LICENSE.txt. 
 
-% TO DO: Linux
+% TO DO: Linux (Android, iOS)
 
 \tableofcontents
 
@@ -257,7 +257,7 @@
 				\item[question] Expects a text answer (in a text box). Has the \texttt{boxsize} argument: set to ``large'' or ``huge'' for a bigger box size.
 				\item[number] Expects a numerical value. Attribute \texttt{min="0"} specifies the minimum value - in this case the answer must be stricly positive before the subject can continue. 
 				\item[radio] Radio buttons. 
-				\item[checkbox] Checkboxes.\\
+				\item[checkbox] Checkboxes. Note that when making a checkbox question ``mandatory'', the subject is forced to select at least one option (which could be e.g. `Other' or `None').\\
 			\end{description}
 
 			\textbf{Example usage:}\\
@@ -294,6 +294,11 @@
 		<option name="good">Good</option>
 		<option name="great">Great</option>
 	</radio>
+	<checkbox id="checkboxtest" mandatory="true">
+				<statement>Please select with which activities you have any experience (example checkbox question)</statement>
+				<option name="musician">Playing a musical instrument</option>
+				<option name="soundengineer">Recording or mixing audio</option>
+			</checkbox>
 	<statement>Thank you for taking this listening test. Please click 'Submit' and your results will appear in the 'saves/' folder.</statement>
 </PostTest>
 			\end{lstlisting}
@@ -641,9 +646,11 @@
 
 \clearpage
 
-\section{Vocabulary} % just to keep track of what exactly we call things. Don't use terms that are too different, to avoid confusion.
+\section{Terminology} % just to keep track of what exactly we call things. Don't use terms that are too different, to avoid confusion.
+	As a guide to better understand the Instructions, and to expand them later, here is a list of terms that may be unclear or ambiguous unless properly defined. 
 	\begin{description}
 		\item[Subject] The word we use for a participant, user, ... of the test, i.e. not the experimenter who designs the test but the person who evaluates the audio under test as part of an experiment (or the preparation of one). 
+		\item[User] The person who uses the tool to configure, run and analyse the test - i.e. the experimenter, most likely a researcher - or at least 
 		\item[Page] A screen in a test; corresponds with an \texttt{audioholder}
 		\item[Fragment] An element or sample in a test; corresponds with an \texttt{audioelement}
 		\item[Test] A complete test which can consist of several pages; corresponds with an entire configuration XML file
--- a/example_eval/project.xml	Fri Dec 18 18:28:06 2015 +0000
+++ b/example_eval/project.xml	Fri Dec 18 18:31:26 2015 +0000
@@ -3,6 +3,14 @@
 	<setup interface="APE" projectReturn="save.php" randomiseOrder='true' collectMetrics='true' testPages="2" loudness="-23">
 		<PreTest>
 			<question id="sessionId" mandatory="true">Please enter your name.</question>
+			<checkbox id="checkboxtest" mandatory="true">
+				<statement>Please select with which activities you have any experience (example checkbox question)</statement>
+				<option name="musician">Playing a musical instrument</option>
+				<option name="soundengineer">Recording or mixing audio</option>
+				<option name="developer">Developing audio software</option>
+				<option name="hwdesigner">Designing or building audio hardware</option>
+				<option name="researcher">Research in the field of audio</option>
+			</checkbox>
 			<statement>This is an example of an 'APE'-style test, with two pages, using the test stimuli in 'example_eval/'.</statement>
 		</PreTest>
 		<PostTest>
--- a/index.html	Fri Dec 18 18:28:06 2015 +0000
+++ b/index.html	Fri Dec 18 18:31:26 2015 +0000
@@ -20,11 +20,6 @@
 		<script src='core.js'></script>
 		<script src='loudness.js'></script>
 		<script type="text/javascript">
-			window.onbeforeunload = function() {
-				return "Please only leave this page once you have completed the tests. Are you sure you have completed all testing?";
-			};
-			
-			var url = 'example_eval/project.xml';
 			// SEARCH QUERY: By using the GET Request option ?url=loca/path/to/project.xml in the URL bar, you can load a project quickly
 			if (window.location.search.length != 0)
 			{
@@ -40,8 +35,11 @@
 						url = searchQueries[i][1];
 					}
 				}
+				loadProjectSpec(url);
+				window.onbeforeunload = function() {
+					return "Please only leave this page once you have completed the tests. Are you sure you have completed all testing?";
+				};
 			}
-			loadProjectSpec(url);
 		</script>
 	</head>
 
@@ -49,7 +47,24 @@
 		<!-- Load up the default page interface allowing for project setting loads, even if hard-coded-->
 		<!-- Actual test interface design should be contained in the .js for ease of dynamic content-->
 		<div id='topLevelBody'>
-			<p>HTML5 APE Tool</p>
+			<h1>Web Audio Evaluation Tool</h1>
+			<h2>Start menu </h2>
+			<ul>
+				<li><a href="index.html?url=example_eval/project.xml" target="_blank">APE interface test example</a></li>
+				<li><a href="index.html?url=example_eval/mushra_example.xml" target="_blank">MUSHRA interface test example</a></li>
+				<li><a href="test_create/test_create.html" target="_blank">Test creator</a></li>
+				<li><a href="analyse.html" target="_blank">Analysis and diagnostics of results</a></li>
+			</ul>
+
+			<br>
+
+			<ul>
+				<li><a href="LICENSE.txt" target="_blank">License</a></li>
+				<li><a href="CITING.txt" target="_blank">Citing</a></li>
+				<li><a href="docs/Instructions/Instructions.pdf" target="_blank">Instructions</a></li>
+			</ul>
+
+
 		</div>
 	</body>
 </html>