rc@74: ////////////////////////////////////////////// rc@74: var socket = io.connect(); rc@74: ////////////////////////////////////////////// rob@91: // Sequencer Controls rob@91: var sstate=0; rc@74: rob@94: function setSpeed(s) { rob@94: socket.emit("setSpeed", s); rob@94: } rob@94: rob@91: function startSeq() { rob@93: //console.log("yeah") rob@91: // if (sstate==0){ rob@91: socket.emit("startSeq"); rob@91: // var sstate=1; rob@91: //} rob@91: } rc@74: rob@91: function stopSeq() { rob@91: //if (sstate==1){ rob@91: socket.emit("stopSeq") rob@91: // var sstate=0; rob@91: // } rob@91: } rob@91: rob@92: function resetSeq() { rob@92: // send reset message to server rob@92: socket.emit("resetSeq") rob@92: // clear all the indicators on the overview rob@92: for (i = 0; i < 64; i++) {$('#inner-'+i+"-0").css("visibility","hidden")} rob@92: for (i = 0; i < 64; i++) {$('#inner-'+i+"-1").css("visibility","hidden")} rob@92: for (i = 0; i < 64; i++) {$('#inner-'+i+"-2").css("visibility","hidden")} rob@92: for (i = 0; i < 64; i++) {$('#inner-'+i+"-3").css("visibility","hidden")} rob@92: } rob@92: rob@93: // hard-reset - reboot server rob@93: function breakSeq() { socket.emit("breakSeq") } rob@93: rc@74: ////////////////////////////////////////////// rc@74: // Chron Controls rc@74: function stopWatch(value) { socket.emit("stopWatch", value) } rc@74: ////////////////////////////////////////////// rc@74: // Metronome Controls rc@74: //socket.on("metroPulse", metronomeTick); rc@74: function metroStart(pulse) { socket.emit("metroStart", pulse);} rc@74: function metroStop() { socket.emit("metroStop");} rob@91: rc@74: ////////////////////////////////////////////// rc@74: // Latency "Pong" rc@74: socket.on("timeFromServer", function(n) { rc@74: socket.emit("clientTimeResponse",n); rc@74: //console.log(n); rc@74: }); rc@74: socket.on("latencyFromServer", function(latency) { rc@74: $("#client_latency").text(latency+"ms.") rc@74: }); rc@74: function getLatencies(x) { socket.emit("getLatencies", x); } rc@74: ////////////////////////////////////////////// rc@74: // Chronometer Controls rob@91: rc@74: function startChr() { socket.emit("startChr"); } rob@91: function stopChr() { socket.emit("stopChr"); } rob@93: function resetChr() { rob@93: socket.emit("resetChr"); rob@93: $("div#client_chronometer").text("00:00:00.0"); rob@93: } rob@91: rc@74: socket.on("chronFromServer", function(chron){ rc@74: $("div#c_chronometer").text(chron); rc@74: }); rc@74: rc@74: ////////////////////////////////////////////// rc@74: // SEQUENCER MONITOR rc@74: socket.on("pageFlipfromserver", sequenceMonitor); rc@74: function sequenceMonitor(group, unit,time,mm,seq,unitlast){ rc@74: // var n=6; var x=seq-1; var off=((x%n)+n)%n // thanks claudiusmaximus rc@74: if (group == 1) { turnmeoff = "#sqr"+unitlast+".sqa"} rc@74: if (group == 2) { turnmeoff = "#sqr"+unitlast+".sqb"} rc@74: if (group == 3) { turnmeoff = "#sqr"+unitlast+".sqc"} rc@74: if (group == 4) { turnmeoff = "#sqr"+unitlast+".sqd"} rc@74: $(turnmeoff).css({'color':'black'}) rc@74: rc@74: } rc@74: rc@74: // countdown to change rc@74: socket.on("countinFromServer", countinCtrl); rc@74: function countinCtrl(groupID, currentseconds,mm,text,colour,background,unit){ rc@74: //console.log("#count"+groupID) rc@74: // all counts to control page rob@79: $("#counttitle"+groupID).css('color','black'); rc@74: $("#counttitle"+groupID).text(text); rob@79: $("#count"+groupID).text(currentseconds).css('color','black'); rc@74: document.getElementById("count"+groupID).style.color=colour; rc@74: } rc@74: rob@93: rc@74: socket.on("counterText", function(group,unit,counter,seq,unitlast,transect){ rc@74: rob@90: $("div#transect").text("Transect: " + (transect+1) + " Unit: " + seq); rc@74: rc@74: if (group == 1) { $('#inner-'+unit+"-0").text(counter); rob@83: $("div#unitseq0").text((transect+1)+ " : " + (seq+1)); rob@83: $("div#timeleft1").text(counter); rc@74: if (counter == 0 ) { $('#inner-'+unit+"-0").css("visibility","hidden") rob@93: //console.log("------------------------- "+ unit) rc@74: } rob@83: else { $('#inner-'+unit+"-0").css({"color" : "yellow", "background":"black", "opacity" : "0.6", "border-radius":"10px", "visibility": "visible" }) } rc@74: } rc@74: rc@74: if (group == 2) { $('#inner-'+unit+"-1").text(counter); rob@83: $("div#unitseq1").text((transect+1)+ " : " + (seq+1)); rob@83: $("div#timeleft2").text(counter); rc@74: if (counter == 0 ) { $('#inner-'+unit+"-1").css("visibility","hidden") } rob@83: else { $('#inner-'+unit+"-1").css({"color":"yellow","background":"green", "opacity" : "0.6", "border-radius":"10px", "visibility": "visible"}) } rc@74: } rc@74: rc@74: if (group == 3) { $('#inner-'+unit+"-2").text(counter); rc@74: $("div#unitseq2").text((transect+1)+ " : " + (seq+1)); rob@83: $("div#timeleft3").text(counter); rc@74: if (counter == 0 ) { $('#inner-'+unit+"-2").css("visibility","hidden") } rob@83: else { $('#inner-'+unit+"-2").css({"color":"yellow","background":"blue", "opacity" : "0.6", "border-radius":"10px", "visibility": "visible"}) } rc@74: } rc@74: rc@74: if (group == 4) { $('#inner-'+unit+"-3").text(counter); rc@74: $("div#unitseq3").text((transect+1)+ " : " + (seq+1)); rob@83: $("div#timeleft4").text(counter); rc@74: if (counter == 0 ) { $('#inner-'+unit+"-3").css("visibility","hidden")} rob@83: else { $('#inner-'+unit+"-3").css({"color":"yellow","background":"red", "opacity" : "0.6", "border-radius":"10px", "visibility": "visible"}) } rc@74: } rc@74: } rc@74: ); rc@74: rc@74: /* rc@74: ////////////////////////////////////////////// rc@74: // CLient Popup window code rc@74: rc@74: function newPopup(url) { rc@74: popupWindow = window.open( rc@74: url,'popUpWindow','height=400,width=800,left=10,top=10,resizable=no,scrollbars=no,toolbar=no,menubar=no,location=no,titlebar=no,directories=no,status=yes')} rc@74: rc@74: */ rc@74: rc@74: //function pad2(number) { return (number < 10 ? '0' : '') + number } rc@74: //socket.on("pageFlipfromserver", pageTurn); rc@74: //function pageTurn (group,unit,time,mm) { rc@74: // var g= pad2(group); rc@74: // var groupPage=document.getElementById('group').value; rc@74: // $("#previewbox-"+group).html("") rc@74: // } rc@74: