changeset 762:01c026742e1e

MUSHRA: Checks enabled. MUSHRA & APE: Warning if check not supported. Core: checkMoved and checkPlayed now in interface and available to all interfaces.
author Nicholas Jillings <nicholas.jillings@eecs.qmul.ac.uk>
date Thu, 17 Dec 2015 17:09:40 +0000
parents af6cfa619c24
children 43801b3d6131
files ape.js core.js mushra.js
diffstat 3 files changed, 71 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/ape.js	Thu Dec 17 16:48:08 2015 +0000
+++ b/ape.js	Thu Dec 17 17:09:40 2015 +0000
@@ -653,6 +653,9 @@
 				var checkState = interfaceContext.checkScaleRange();
 				if (checkState == false) {canContinue = false;}
 				break;
+			default:
+				console.log("WARNING - Check option "+checks[i].check+" is not supported on this interface");
+				break;
 			}
 
 		}
--- a/core.js	Thu Dec 17 16:48:08 2015 +0000
+++ b/core.js	Thu Dec 17 17:09:40 2015 +0000
@@ -2819,4 +2819,64 @@
 			alert(str_start);
 		}
 	};
+	this.checkAllMoved = function()
+	{
+		var str = "You have not moved ";
+		var failed = [];
+		for (var i in audioEngineContext.audioObjects)
+		{
+			if(audioEngineContext.audioObjects[i].metric.wasMoved == false)
+			{
+				failed.push(audioEngineContext.audioObjects[i].id);
+			}
+		}
+		if (failed.length == 0)
+		{
+			return true;
+		} else if (failed.length == 1)
+		{
+			str += 'track '+failed[0];
+		} else {
+			str += 'tracks ';
+			for (var i=0; i<failed.length-1; i++)
+			{
+				str += failed[i]+', ';
+			}
+			str += 'and '+failed[i];
+		}
+		str +='.';
+		alert(str);
+		console.log(str);
+		return false;
+	};
+	this.checkAllPlayed = function()
+	{
+		var str = "You have not played ";
+		var failed = [];
+		for (var i in audioEngineContext.audioObjects)
+		{
+			if(audioEngineContext.audioObjects[i].metric.wasListenedTo == false)
+			{
+				failed.push(audioEngineContext.audioObjects[i].id);
+			}
+		}
+		if (failed.length == 0)
+		{
+			return true;
+		} else if (failed.length == 1)
+		{
+			str += 'track '+failed[0];
+		} else {
+			str += 'tracks ';
+			for (var i=0; i<failed.length-1; i++)
+			{
+				str += failed[i]+', ';
+			}
+			str += 'and '+failed[i];
+		}
+		str +='.';
+		alert(str);
+		console.log(str);
+		return false;
+	};
 }
\ No newline at end of file
--- a/mushra.js	Thu Dec 17 16:48:08 2015 +0000
+++ b/mushra.js	Thu Dec 17 17:09:40 2015 +0000
@@ -269,7 +269,7 @@
 	// Check that the anchor and reference objects are correctly placed
 	if (interfaceContext.checkHiddenAnchor() == false) {return;}
 	if (interfaceContext.checkHiddenReference() == false) {return;}
-	/*
+	
 	for (var i=0; i<checks.length; i++) {
 		if (checks[i].type == 'check')
 		{
@@ -295,17 +295,20 @@
 				var checkState = interfaceContext.checkAllCommented();
 				if (checkState == false) {canContinue = false;}
 				break;
-			case 'scalerange':
+			//case 'scalerange':
 				// Check the scale is used to its full width outlined by the node
-				var checkState = interfaceContext.checkScaleRange();
-				if (checkState == false) {canContinue = false;}
+				//var checkState = interfaceContext.checkScaleRange();
+				//if (checkState == false) {canContinue = false;}
+			//	break;
+			default:
+				console.log("WARNING - Check option "+checks[i].check+" is not supported on this interface");
 				break;
 			}
 
 		}
 		if (!canContinue) {break;}
 	}
-   */
+	
     if (canContinue) {
 	    if (audioEngineContext.status == 1) {
 	        var playback = document.getElementById('playback-button');