Mercurial > hg > webaudioevaluationtool
comparison ape.js @ 670:77c974fd7e60
Completed Handling of in-page pre/post responses
author | Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk> |
---|---|
date | Fri, 10 Apr 2015 17:43:53 +0100 |
parents | c8eb821710fa |
children | 9ea50bbcaf9a |
comparison
equal
deleted
inserted
replaced
669:c8eb821710fa | 670:77c974fd7e60 |
---|---|
206 alert(errStr); | 206 alert(errStr); |
207 return; | 207 return; |
208 } | 208 } |
209 } | 209 } |
210 | 210 |
211 currentTestHolder = document.createElement('audioHolder'); | |
212 currentTestHolder.id = textXML.id; | |
213 currentTestHolder.repeatCount = textXML.attributes['repeatCount'].value; | |
214 var currentPreTestHolder = document.createElement('preTest'); | |
215 var currentPostTestHolder = document.createElement('postTest'); | |
216 currentTestHolder.appendChild(currentPreTestHolder); | |
217 currentTestHolder.appendChild(currentPostTestHolder); | |
218 | |
211 var randomise = textXML.attributes['randomiseOrder']; | 219 var randomise = textXML.attributes['randomiseOrder']; |
212 if (randomise != undefined) {randomise = randomise.value;} | 220 if (randomise != undefined) {randomise = randomise.value;} |
213 else {randomise = false;} | 221 else {randomise = false;} |
214 | 222 |
215 var audioElements = $(textXML).find('audioElements'); | 223 var audioElements = $(textXML).find('audioElements'); |
358 var questionId = preTest.children[index].attributes['id'].value; | 366 var questionId = preTest.children[index].attributes['id'].value; |
359 var questionHold = document.createElement('comment'); | 367 var questionHold = document.createElement('comment'); |
360 var questionResponse = document.getElementById(questionId + 'response'); | 368 var questionResponse = document.getElementById(questionId + 'response'); |
361 questionHold.id = questionId; | 369 questionHold.id = questionId; |
362 questionHold.innerHTML = questionResponse.value; | 370 questionHold.innerHTML = questionResponse.value; |
363 if (currentState == 'preTest') { | 371 postPopupResponse(questionHold); |
364 preTestQuestions.appendChild(questionHold); | |
365 } else if (currentState = 'postTest') { | |
366 postTestQuestions.appendChild(questionHold); | |
367 } | |
368 } | 372 } |
369 index++; | 373 index++; |
370 if (index < preTest.children.length) | 374 if (index < preTest.children.length) |
371 { | 375 { |
372 // More to process | 376 // More to process |
399 } | 403 } |
400 } | 404 } |
401 return index; | 405 return index; |
402 } | 406 } |
403 | 407 |
408 function postPopupResponse(response) | |
409 { | |
410 if (currentState == 'preTest') { | |
411 preTestQuestions.appendChild(response); | |
412 } else if (currentState == 'postTest') { | |
413 postTestQuestions.appendChild(response); | |
414 } else { | |
415 // Inside a specific test | |
416 if (currentState.substr(0,10) == 'testRunPre') { | |
417 // Pre Test | |
418 var store = $(currentTestHolder).find('preTest'); | |
419 } else { | |
420 // Post Test | |
421 var store = $(currentTestHolder).find('postTest'); | |
422 } | |
423 store[0].appendChild(response); | |
424 } | |
425 } | |
426 | |
404 function showPopup() | 427 function showPopup() |
405 { | 428 { |
406 var popupHolder = document.getElementById('popupHolder'); | 429 var popupHolder = document.getElementById('popupHolder'); |
407 popupHolder.style.zIndex = 3; | 430 popupHolder.style.zIndex = 3; |
408 popupHolder.style.visibility = 'visible'; | 431 popupHolder.style.visibility = 'visible'; |
502 } | 525 } |
503 | 526 |
504 function pageXMLSave(testId) | 527 function pageXMLSave(testId) |
505 { | 528 { |
506 // Saves a specific test page | 529 // Saves a specific test page |
507 var xmlDoc = document.createElement("AudioHolder"); | 530 var xmlDoc = currentTestHolder; |
508 var testXML = testXMLSetups[testId]; | |
509 xmlDoc.id = testXML.id; | |
510 xmlDoc.repeatCount = testXML.attributes['repeatCount'].value; | |
511 var trackSliderObjects = document.getElementsByClassName('track-slider'); | 531 var trackSliderObjects = document.getElementsByClassName('track-slider'); |
512 var commentObjects = document.getElementsByClassName('comment-div'); | 532 var commentObjects = document.getElementsByClassName('comment-div'); |
513 var rateMin = 50; | 533 var rateMin = 50; |
514 var rateMax = window.innerWidth-50; | 534 var rateMax = window.innerWidth-50; |
515 for (var i=0; i<trackSliderObjects.length; i++) | 535 for (var i=0; i<trackSliderObjects.length; i++) |