# HG changeset patch # User Nicholas Jillings # Date 1509465307 0 # Node ID e441e3d5c7e74a00c2ae4d9ed0578e5ed3525b6b # Parent 83097e588634765eddf6992fa16994053457c3b3 Potential implementation of #109 diff -r 83097e588634 -r e441e3d5c7e7 interfaces/ape.js --- a/interfaces/ape.js Tue Oct 31 15:43:05 2017 +0000 +++ b/interfaces/ape.js Tue Oct 31 15:55:07 2017 +0000 @@ -644,9 +644,18 @@ this.initialisePage = function (page_init) { this.clear(); page = page_init; - var interfaceObj = interfaceContext.getCombinedInterfaces(page); + var randomiseAxisOrder; + if (page.randomiseAxisOrder !== undefined) { + randomiseAxisOrder = page.randomiseAxisOrder; + } else { + randomiseAxisOrder = page.parent.randomiseAxisOrder; + } var commentBoxes = false; // Create each of the interface axis + if (randomiseAxisOrder) { + page.interfaces = randomiseOrder(page.interfaces); + } + var interfaceObj = interfaceContext.getCombinedInterfaces(page); interfaceObj.forEach(function (i) { var node = new axisObject(i, this); axis.push(node); diff -r 83097e588634 -r e441e3d5c7e7 js/specification.js --- a/js/specification.js Tue Oct 31 15:43:05 2017 +0000 +++ b/js/specification.js Tue Oct 31 15:55:07 2017 +0000 @@ -19,6 +19,7 @@ this.playOne = undefined; this.minNumberPlays = undefined; this.maxNumberPlays = undefined; + this.randomiseAxisOrder = undefined; // nodes this.metrics = new metricNode(); @@ -580,6 +581,7 @@ this.commentBoxPrefix = "Comment on track"; this.minNumberPlays = undefined; this.maxNumberPlays = undefined; + this.randomiseAxisOrder = undefined; this.audioElements = []; this.commentQuestions = []; this.schema = schemaRoot.querySelector("[name=page]");