diff interfaces/ape.js @ 485:92f26057b934 Dev_main

Added master volume. Ensured playhead, page-count and volume <interfaceoption> show options are enabled on all test pages.
author Nicholas Jillings <n.g.r.jillings@se14.qmul.ac.uk>
date Mon, 25 Jan 2016 17:29:34 +0000
parents 1330c77d212c
children 159b87e5de67
line wrap: on
line diff
--- a/interfaces/ape.js	Fri Jan 22 17:03:18 2016 +0000
+++ b/interfaces/ape.js	Mon Jan 25 17:29:34 2016 +0000
@@ -293,33 +293,43 @@
 	for (var k=0; k<interfaceObj.length; k++) {
 		// Create the div box to center align
 		interfaceContext.interfaceSliders.push(new interfaceSliderHolder(interfaceObj[k]));
-		for (var i=0; i<interfaceObj[k].options.length; i++)
-		{
-			if (interfaceObj[k].options[i].type == 'option' && interfaceObj[k].options[i].name == 'playhead')
-			{
-				var playbackHolder = document.getElementById('playback-holder');
-				if (playbackHolder == null)
-				{
-					playbackHolder = document.createElement('div');
-					playbackHolder.style.width = "100%";
-					playbackHolder.align = 'center';
-					playbackHolder.appendChild(interfaceContext.playhead.object);
-					feedbackHolder.appendChild(playbackHolder);
-				}
-			} else if (interfaceObj[k].options[i].type == 'option' && interfaceObj[k].options[i].name == 'page-count')
-			{
-				var pagecountHolder = document.getElementById('page-count');
-				if (pagecountHolder == null)
-				{
-					pagecountHolder = document.createElement('div');
-					pagecountHolder.id = 'page-count';
-				}
-				pagecountHolder.innerHTML = '<span>Page '+(audioHolderObject.presentedId+1)+' of '+specification.audioHolders.length+'</span>';
-				var inject = document.getElementById('interface-buttons');
-				inject.appendChild(pagecountHolder);
-			}
-		}
 	}
+    
+    var interfaceList = audioHolderObject.interfaces.concat(specification.interfaces);
+    for (var k=0; k<interfaceList.length; k++)
+    {
+        for (var i=0; i<interfaceList[k].options.length; i++)
+        {
+            if (interfaceList[k].options[i].type == 'show' && interfaceList[k].options[i].name == 'playhead')
+            {
+                var playbackHolder = document.getElementById('playback-holder');
+                if (playbackHolder == null)
+                {
+                    playbackHolder = document.createElement('div');
+                    playbackHolder.style.width = "100%";
+                    playbackHolder.align = 'center';
+                    playbackHolder.appendChild(interfaceContext.playhead.object);
+                    feedbackHolder.appendChild(playbackHolder);
+                }
+            } else if (interfaceList[k].options[i].type == 'show' && interfaceList[k].options[i].name == 'page-count')
+            {
+                var pagecountHolder = document.getElementById('page-count');
+                if (pagecountHolder == null)
+                {
+                    pagecountHolder = document.createElement('div');
+                    pagecountHolder.id = 'page-count';
+                }
+                pagecountHolder.innerHTML = '<span>Page '+(audioHolderObject.presentedId+1)+' of '+specification.pages.length+'</span>';
+                var inject = document.getElementById('interface-buttons');
+                inject.appendChild(pagecountHolder);
+            } else if (interfaceList[k].options[i].type == 'show' && interfaceList[k].options[i].name == 'volume') {
+                if (document.getElementById('master-volume-holder') == null)
+                {
+                    feedbackHolder.appendChild(interfaceContext.volume.object);
+                }
+            }
+        }
+    }
 	
 	var commentBoxPrefix = "Comment on fragment";