Mercurial > hg > webaudioevaluationtool
changeset 914:de1cc98f2889
Small fixes. <interface> tag properly processed by ape.js
author | Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk> |
---|---|
date | Thu, 04 Jun 2015 18:03:36 +0100 |
parents | 62e755ce8d34 |
children | 92aea9ab8060 |
files | ape.js core.js |
diffstat | 2 files changed, 31 insertions(+), 30 deletions(-) [+] |
line wrap: on
line diff
--- a/ape.js Thu Jun 04 17:23:32 2015 +0100 +++ b/ape.js Thu Jun 04 18:03:36 2015 +0100 @@ -177,39 +177,40 @@ canvas.innerHTML = null; // Setup question title - var interfaceObj = $(audioHolderObject).find('interface'); - var titleNode = interfaceObj.find('title'); - if (titleNode[0] != undefined) - { - document.getElementById('pageTitle').textContent = titleNode[0].textContent; - } - var positionScale = canvas.style.width.substr(0,canvas.style.width.length-2); - var offset = Number(document.getElementById('slider').attributes['marginsize'].value); - var scale = document.getElementById('sliderScaleHolder'); - scale.innerHTML = null; - interfaceObj.find('scale').each(function(index,scaleObj){ - var value = document.createAttribute('value'); - var position = Number(scaleObj.attributes['position'].value)*0.01; - value.nodeValue = position; - var pixelPosition = (position*positionScale)+offset; - var scaleDOM = document.createElement('span'); - scaleDOM.textContent = scaleObj.textContent; - scale.appendChild(scaleDOM); - scaleDOM.style.left = Math.floor((pixelPosition-($(scaleDOM).width()/2)))+'px'; - scaleDOM.setAttributeNode(value); - }); - - var commentBoxPrefix = interfaceObj.find('commentBoxPrefix'); - if (commentBoxPrefix.length != 0) { - commentBoxPrefix = commentBoxPrefix[0].textContent; - } else { - commentBoxPrefix = "Comment on track"; + var interfaceObj = audioHolderObject.interfaces; + var commentBoxPrefix = "Comment on track"; + if (interfaceObj.length != 0) { + interfaceObj = interfaceObj[0]; + var titleNode = interfaceObj.title; + if (titleNode != undefined) + { + document.getElementById('pageTitle').textContent = titleNode; + } + var positionScale = canvas.style.width.substr(0,canvas.style.width.length-2); + var offset = Number(document.getElementById('slider').attributes['marginsize'].value); + var scale = document.getElementById('sliderScaleHolder'); + scale.innerHTML = null; + $(interfaceObj.scale).each(function(index,scaleObj){ + var value = document.createAttribute('value'); + var position = Number(scaleObj[0])*0.01; + value.nodeValue = position; + var pixelPosition = (position*positionScale)+offset; + var scaleDOM = document.createElement('span'); + scaleDOM.textContent = scaleObj[1]; + scale.appendChild(scaleDOM); + scaleDOM.style.left = Math.floor((pixelPosition-($(scaleDOM).width()/2)))+'px'; + scaleDOM.setAttributeNode(value); + }); + + if (interfaceObj.commentBoxPrefix != undefined) { + commentBoxPrefix = interfaceObj.commentBoxPrefix; + } } /// CHECK FOR SAMPLE RATE COMPATIBILITY if (audioHolderObject.sampleRate != undefined) { if (Number(audioHolderObject.sampleRate) != audioContext.sampleRate) { - var errStr = 'Sample rates do not match! Requested '+Number(hostFs)+', got '+audioContext.sampleRate+'. Please set the sample rate to match before completing this test.'; + var errStr = 'Sample rates do not match! Requested '+Number(audioHolderObject.sampleRate)+', got '+audioContext.sampleRate+'. Please set the sample rate to match before completing this test.'; alert(errStr); return; }
--- a/core.js Thu Jun 04 17:23:32 2015 +0100 +++ b/core.js Thu Jun 04 18:03:36 2015 +0100 @@ -976,10 +976,10 @@ this.projectReturn = setupNode.getAttribute('projectReturn'); if (setupNode.getAttribute('randomiseOrder') == "true") { this.randomiseOrder = true; - } else {this.setup.randomiseOrder = false;} + } else {this.randomiseOrder = false;} if (setupNode.getAttribute('collectMetrics') == "true") { this.collectMetrics = true; - } else {this.setup.collectMetrics = false;} + } else {this.collectMetrics = false;} var metricCollection = setupNode.getElementsByTagName('Metric'); this.preTest = new this.prepostNode('pretest',setupNode.getElementsByTagName('PreTest'));