Mercurial > hg > webaudioevaluationtool
comparison ape.js @ 1577:f1cca540c09d
audioObjects.metric object export their XML rather than ape.js
author | Nicholas Jillings <nickjillings@users.noreply.github.com> |
---|---|
date | Thu, 04 Jun 2015 11:01:19 +0100 |
parents | 51bbd0fdf7b4 |
children | 40f9b1725279 |
comparison
equal
deleted
inserted
replaced
1576:51bbd0fdf7b4 | 1577:f1cca540c09d |
---|---|
72 this.lastClicked = id; | 72 this.lastClicked = id; |
73 audioEngineContext.audioObjects[id].metric.listening(time); | 73 audioEngineContext.audioObjects[id].metric.listening(time); |
74 } | 74 } |
75 console.log('slider ' + id + ' played (' + time + ')'); // DEBUG/SAFETY: show played slider id | 75 console.log('slider ' + id + ' played (' + time + ')'); // DEBUG/SAFETY: show played slider id |
76 }; | 76 }; |
77 | |
78 // Bindings for audioObjects | |
77 | 79 |
78 // Create the top div for the Title element | 80 // Create the top div for the Title element |
79 var titleAttr = xmlSetup[0].attributes['title']; | 81 var titleAttr = xmlSetup[0].attributes['title']; |
80 var title = document.createElement('div'); | 82 var title = document.createElement('div'); |
81 title.className = "title"; | 83 title.className = "title"; |
351 // Add to the holder. | 353 // Add to the holder. |
352 trackComment.appendChild(trackString); | 354 trackComment.appendChild(trackString); |
353 trackComment.appendChild(br); | 355 trackComment.appendChild(br); |
354 trackComment.appendChild(trackCommentBox); | 356 trackComment.appendChild(trackCommentBox); |
355 feedbackHolder.appendChild(trackComment); | 357 feedbackHolder.appendChild(trackComment); |
358 audioEngineContext.audioObjects[index].commentDOM = trackCommentBox; | |
356 } | 359 } |
357 | 360 |
358 // Create a slider per track | 361 // Create a slider per track |
359 | 362 |
360 var trackSliderObj = document.createElement('div'); | 363 var trackSliderObj = document.createElement('div'); |
396 $(event.srcElement).addClass('track-slider-playing'); | 399 $(event.srcElement).addClass('track-slider-playing'); |
397 $('.comment-div').removeClass('comment-box-playing'); | 400 $('.comment-div').removeClass('comment-box-playing'); |
398 $('#comment-div-'+id).addClass('comment-box-playing'); | 401 $('#comment-div-'+id).addClass('comment-box-playing'); |
399 } | 402 } |
400 }; | 403 }; |
404 | |
405 // Attach binding | |
406 audioEngineContext.audioObjects[index].sliderDOM = trackSliderObj; | |
401 | 407 |
402 canvas.appendChild(trackSliderObj); | 408 canvas.appendChild(trackSliderObj); |
403 audioEngineContext.audioObjects[index].metric.initialised(convSliderPosToRate(index)); | 409 audioEngineContext.audioObjects[index].metric.initialised(convSliderPosToRate(index)); |
404 | 410 |
405 }); | 411 }); |
559 var commentObjects = document.getElementsByClassName('comment-div'); | 565 var commentObjects = document.getElementsByClassName('comment-div'); |
560 for (var i=0; i<trackSliderObjects.length; i++) | 566 for (var i=0; i<trackSliderObjects.length; i++) |
561 { | 567 { |
562 var audioElement = document.createElement('audioElement'); | 568 var audioElement = document.createElement('audioElement'); |
563 audioElement.id = currentTrackOrder[i].attributes['id'].value; | 569 audioElement.id = currentTrackOrder[i].attributes['id'].value; |
564 audioElement.url = currentTrackOrder[i].attributes['url'].value; | 570 audioElement.setAttribute('url',currentTrackOrder[i].attributes['url'].value); |
565 var value = document.createElement('value'); | 571 var value = document.createElement('value'); |
566 value.innerHTML = convSliderPosToRate(i); | 572 value.innerHTML = convSliderPosToRate(i); |
567 if (commentShow) { | 573 if (commentShow) { |
568 var comment = document.createElement("comment"); | 574 var comment = document.createElement("comment"); |
569 var question = document.createElement("question"); | 575 var question = document.createElement("question"); |
575 comment.appendChild(response); | 581 comment.appendChild(response); |
576 audioElement.appendChild(comment); | 582 audioElement.appendChild(comment); |
577 } | 583 } |
578 audioElement.appendChild(value); | 584 audioElement.appendChild(value); |
579 // Check for any per element metrics | 585 // Check for any per element metrics |
580 var metric = document.createElement('metric'); | 586 |
581 var elementMetric = audioEngineContext.audioObjects[i].metric; | 587 audioElement.appendChild(audioEngineContext.audioObjects[i].metric.exportXMLDOM()); |
582 if (audioEngineContext.metric.enableElementTimer) { | |
583 var elementTimer = document.createElement('metricResult'); | |
584 elementTimer.id = 'elementTimer'; | |
585 elementTimer.textContent = elementMetric.listenedTimer; | |
586 metric.appendChild(elementTimer); | |
587 } | |
588 if (audioEngineContext.metric.enableElementTracker) { | |
589 var elementTrackerFull = document.createElement('metricResult'); | |
590 elementTrackerFull.id = 'elementTrackerFull'; | |
591 var data = elementMetric.movementTracker; | |
592 for (var k=0; k<data.length; k++) | |
593 { | |
594 var timePos = document.createElement('timePos'); | |
595 timePos.id = k; | |
596 var time = document.createElement('time'); | |
597 time.textContent = data[k][0]; | |
598 var position = document.createElement('position'); | |
599 position.textContent = data[k][1]; | |
600 timePos.appendChild(time); | |
601 timePos.appendChild(position); | |
602 elementTrackerFull.appendChild(timePos); | |
603 } | |
604 metric.appendChild(elementTrackerFull); | |
605 } | |
606 if (audioEngineContext.metric.enableElementListenTracker) { | |
607 var elementListenTracker = document.createElement('metricResult'); | |
608 elementListenTracker.id = 'elementListenTracker'; | |
609 var obj = elementMetric.listenTracker; | |
610 for (var k=0; k<obj.length; k++) { | |
611 elementListenTracker.appendChild(obj[k]); | |
612 } | |
613 metric.appendChild(elementListenTracker); | |
614 } | |
615 if (audioEngineContext.metric.enableElementInitialPosition) { | |
616 var elementInitial = document.createElement('metricResult'); | |
617 elementInitial.id = 'elementInitialPosition'; | |
618 elementInitial.textContent = elementMetric.initialPosition; | |
619 metric.appendChild(elementInitial); | |
620 } | |
621 if (audioEngineContext.metric.enableFlagListenedTo) { | |
622 var flagListenedTo = document.createElement('metricResult'); | |
623 flagListenedTo.id = 'elementFlagListenedTo'; | |
624 flagListenedTo.textContent = elementMetric.wasListenedTo; | |
625 metric.appendChild(flagListenedTo); | |
626 } | |
627 if (audioEngineContext.metric.enableFlagMoved) { | |
628 var flagMoved = document.createElement('metricResult'); | |
629 flagMoved.id = 'elementFlagMoved'; | |
630 flagMoved.textContent = elementMetric.wasMoved; | |
631 metric.appendChild(flagMoved); | |
632 } | |
633 if (audioEngineContext.metric.enableFlagComments) { | |
634 var flagComments = document.createElement('metricResult'); | |
635 flagComments.id = 'elementFlagComments'; | |
636 if (response.textContent.length == 0) {flag.textContent = 'false';} | |
637 else {flag.textContet = 'true';} | |
638 metric.appendChild(flagComments); | |
639 } | |
640 audioElement.appendChild(metric); | |
641 xmlDoc.appendChild(audioElement); | 588 xmlDoc.appendChild(audioElement); |
642 } | 589 } |
643 var commentQuestion = document.getElementsByClassName('commentQuestion'); | 590 var commentQuestion = document.getElementsByClassName('commentQuestion'); |
644 for (var i=0; i<commentQuestion.length; i++) | 591 for (var i=0; i<commentQuestion.length; i++) |
645 { | 592 { |