# HG changeset patch # User Nicholas Jillings # Date 1428684233 -3600 # Node ID 77c974fd7e607b75a2eeaed604fc7ff7265ccf9e # Parent c8eb821710fa7debc046861a92990c8003b9a6ae Completed Handling of in-page pre/post responses diff -r c8eb821710fa -r 77c974fd7e60 ape.js --- a/ape.js Fri Apr 10 17:18:45 2015 +0100 +++ b/ape.js Fri Apr 10 17:43:53 2015 +0100 @@ -208,6 +208,14 @@ } } + currentTestHolder = document.createElement('audioHolder'); + currentTestHolder.id = textXML.id; + currentTestHolder.repeatCount = textXML.attributes['repeatCount'].value; + var currentPreTestHolder = document.createElement('preTest'); + var currentPostTestHolder = document.createElement('postTest'); + currentTestHolder.appendChild(currentPreTestHolder); + currentTestHolder.appendChild(currentPostTestHolder); + var randomise = textXML.attributes['randomiseOrder']; if (randomise != undefined) {randomise = randomise.value;} else {randomise = false;} @@ -360,11 +368,7 @@ var questionResponse = document.getElementById(questionId + 'response'); questionHold.id = questionId; questionHold.innerHTML = questionResponse.value; - if (currentState == 'preTest') { - preTestQuestions.appendChild(questionHold); - } else if (currentState = 'postTest') { - postTestQuestions.appendChild(questionHold); - } + postPopupResponse(questionHold); } index++; if (index < preTest.children.length) @@ -401,6 +405,25 @@ return index; } +function postPopupResponse(response) +{ + if (currentState == 'preTest') { + preTestQuestions.appendChild(response); + } else if (currentState == 'postTest') { + postTestQuestions.appendChild(response); + } else { + // Inside a specific test + if (currentState.substr(0,10) == 'testRunPre') { + // Pre Test + var store = $(currentTestHolder).find('preTest'); + } else { + // Post Test + var store = $(currentTestHolder).find('postTest'); + } + store[0].appendChild(response); + } +} + function showPopup() { var popupHolder = document.getElementById('popupHolder'); @@ -504,10 +527,7 @@ function pageXMLSave(testId) { // Saves a specific test page - var xmlDoc = document.createElement("AudioHolder"); - var testXML = testXMLSetups[testId]; - xmlDoc.id = testXML.id; - xmlDoc.repeatCount = testXML.attributes['repeatCount'].value; + var xmlDoc = currentTestHolder; var trackSliderObjects = document.getElementsByClassName('track-slider'); var commentObjects = document.getElementsByClassName('comment-div'); var rateMin = 50; diff -r c8eb821710fa -r 77c974fd7e60 core.js --- a/core.js Fri Apr 10 17:18:45 2015 +0100 +++ b/core.js Fri Apr 10 17:43:53 2015 +0100 @@ -26,7 +26,7 @@ var testXMLSetups = []; // Hold the parsed test instances var testResultsHolders =[]; // Hold the results from each test for publishing to XML var currentTrackOrder = []; // Hold the current XML tracks in their (randomised) order -var currentTestHolder; // Hold an intermediate results during test - metrics +var currentTestHolder; // Hold any intermediate results during test - metrics var audioEngineContext; // The custome AudioEngine object var projectReturn; // Hold the URL for the return var preTestQuestions = document.createElement('PreTest'); // Store any pre-test question response diff -r c8eb821710fa -r 77c974fd7e60 example_eval/project.xml --- a/example_eval/project.xml Fri Apr 10 17:18:45 2015 +0100 +++ b/example_eval/project.xml Fri Apr 10 17:43:53 2015 +0100 @@ -32,11 +32,10 @@ What is your mixing experiance Start the Test 3 - Start the Test 2 - Start the Test 1 Please take a break before the next test + How did you find the test \ No newline at end of file