comparison ape.js @ 231:b51da1e7547c Dev_main

Added check type 'scalerange' with min max attributes to enforce use of the scale.
author Nicholas Jillings <nicholas.jillings@eecs.qmul.ac.uk>
date Fri, 19 Jun 2015 16:31:14 +0100
parents d8bad6edaa95
children ed0f60b100c0
comparison
equal deleted inserted replaced
224:ccb62b429a85 231:b51da1e7547c
143 alert('You have not commented on fragment ' + strNums[0] + ' yet. Please listen, rate and comment all samples before submitting.'); 143 alert('You have not commented on fragment ' + strNums[0] + ' yet. Please listen, rate and comment all samples before submitting.');
144 } 144 }
145 } 145 }
146 } 146 }
147 return state; 147 return state;
148 };
149
150 Interface.prototype.checkScaleRange = function()
151 {
152 var audioObjs = audioEngineContext.audioObjects;
153 var audioHolder = testState.stateMap[testState.stateIndex];
154 var interfaces = audioHolder.interfaces;
155
156 var minRanking = audioObjs[0].interfaceDOM.getValue();
157 var maxRanking = minRanking;
158
159 var minScale;
160 var maxScale;
161 for (var i=0; i<interfaces[0].options.length; i++)
162 {
163 if (interfaces[0].options[i].check == "scalerange") {
164 minScale = interfaces[0].options[i].min;
165 maxScale = interfaces[0].options[i].max;
166 }
167 }
168
169 for (var i=1; i<audioObjs.length; i++){
170 var ranking = audioObjs[i].interfaceDOM.getValue();
171 if (ranking < minRanking) { minRanking = ranking;}
172 if (ranking > maxRanking) { maxRanking = ranking;}
173 }
174 if (minRanking > minScale || maxRanking < maxScale) {
175 alert('Please use the full width of the scale');
176 return false;
177 } else {
178 return true;
179 }
148 }; 180 };
149 181
150 // Bindings for audioObjects 182 // Bindings for audioObjects
151 183
152 // Create the top div for the Title element 184 // Create the top div for the Title element
528 case 'fragmentComments': 560 case 'fragmentComments':
529 // Check all fragment sliders have been moved. 561 // Check all fragment sliders have been moved.
530 var checkState = interfaceContext.checkAllCommented(); 562 var checkState = interfaceContext.checkAllCommented();
531 if (checkState == false) {canContinue = false;} 563 if (checkState == false) {canContinue = false;}
532 break; 564 break;
533 } 565 case 'scalerange':
534 566 // Check the scale is used to its full width outlined by the node
535 } 567 var checkState = interfaceContext.checkScaleRange();
568 if (checkState == false) {canContinue = false;}
569 break;
570 }
571
572 }
573 if (!canContinue) {break;}
536 } 574 }
537 575
538 if (canContinue) { 576 if (canContinue) {
539 if (audioEngineContext.status == 1) { 577 if (audioEngineContext.status == 1) {
540 var playback = document.getElementById('playback-button'); 578 var playback = document.getElementById('playback-button');