Commit 9cf393737711e681f9f2dfdcfb2f9d246127aa63

Authored by Adabriand Furtado
1 parent e0c12d9c
Exists in master and in 1 other branch dynamic

Versão inicial do módulo de controle do workflow de seleção.

view/assets/js/articulation.js
... ... @@ -11,7 +11,7 @@
11 11  
12 12 function _setupModuleZ(hand, y) {
13 13 if (typeof y == "undefined") return;
14   - var articulation_z = "#" + hand + "-articulation .module-z";
  14 + var articulation_z = "." + hand + "-articulation .module-z";
15 15 $(articulation_z + " .ball-selector").hide();
16 16 $(articulation_z + " .row-number-" + y + " .ball-selector").show();
17 17  
... ... @@ -23,8 +23,8 @@
23 23 }
24 24  
25 25 function _setupBallSelector(hand) {
26   - var articulation_x_y = "#" + hand + "-articulation .module-x-y";
27   - $(articulation_x_y + " .ball-selector").on("click", function(a) {
  26 + var articulation_x_y = "#" + hand + "-articulation-x-y .module-x-y";
  27 + $(articulation_x_y + " .ball-selector").off("click").on("click", function(a) {
28 28 var b = $(a.target);
29 29 if (!b.hasClass("ball-selector")) return;
30 30 var c = b.parent(".grid-row"),
... ... @@ -33,17 +33,19 @@
33 33 g = c.attr("data-y");
34 34 d.attr("data-x", f), d.attr("data-y", g), _updateASelector(articulation_x_y, b)
35 35 _setupModuleZ(hand, g);
36   - _updateParameterJSON(hand);
  36 + //_updateParameterJSON(hand);
  37 + dynworkflow.nextSubConfig();
37 38 });
38   - var articulation_z = "#" + hand + "-articulation .module-z";
39   - $(articulation_z + " .ball-selector").on("click", function(a) {
  39 + var articulation_z = "#" + hand + "-articulation-z .module-z";
  40 + $(articulation_z + " .ball-selector").off("click").on("click", function(a) {
40 41 var b = $(a.target);
41 42 if (!b.hasClass("ball-selector")) return;
42 43 var c = b.parent(".grid-row"),
43 44 e = $(articulation_z),
44 45 h = b.attr("data-z");
45 46 b.attr("data-z") && e.attr("data-z", h), _updateASelector(articulation_z, b);
46   - _updateParameterJSON(hand);
  47 + //_updateParameterJSON(hand);
  48 + dynworkflow.nextSubConfig();
47 49 });
48 50 }
49 51  
... ... @@ -57,8 +59,8 @@
57 59 }
58 60  
59 61 function _readValue(hand) {
60   - var articulation_x_y = "#" + hand + "-articulation .module-x-y";
61   - var articulation_z = "#" + hand + "-articulation .module-z";
  62 + var articulation_x_y = "." + hand + "-articulation .module-x-y";
  63 + var articulation_z = "." + hand + "-articulation .module-z";
62 64 var x = parseInt($(articulation_x_y).attr("data-x"));
63 65 var y = parseInt($(articulation_x_y).attr("data-y"));
64 66 var z = $(articulation_z).attr("data-z");
... ...
view/assets/js/configuration.js 0 → 100644
... ... @@ -0,0 +1,24 @@
  1 +(function(configuration, $, undefined) {
  2 +
  3 + configuration.setupFingersGroup = function() {
  4 + $("#right-hand-fingers-position-group .selection-panel-option").off("click").on(
  5 + "click", function() {
  6 + $("#right-hand-fingers-position-group .selection-panel-option[select=true]")
  7 + .removeAttr("select");
  8 + $(this).attr("select", true);
  9 + dynworkflow.nextSubConfig();
  10 + });
  11 + };
  12 +
  13 + configuration.setupFingersPosition = function() {
  14 + $("#right-hand-fingers-position .selection-panel-option").off("click").on(
  15 + "click", function() {
  16 + dynworkflow.nextSubConfig();
  17 + });
  18 +
  19 + var finger_group = $("#right-hand-fingers-position-group .selection-panel-option[select=true]").attr("group");
  20 + $("#right-hand-fingers-position .finger-group").hide();
  21 + $("#right-hand-fingers-position .finger-group[group=" + finger_group + "]").show();
  22 + }
  23 +
  24 +}(window.configuration = window.configuration || {}, jQuery));
0 25 \ No newline at end of file
... ...
view/assets/js/dynamic-loading-engine.js
... ... @@ -5,12 +5,18 @@
5 5 return data.replace(/{{ server }}/g, url);
6 6 };
7 7  
8   - dynengine.render = function(serverUrl, templatePath, target, callback) {
  8 + dynengine.render = function(serverUrl, templatePath, target, prepend, callback) {
9 9 var url = serverUrl + templatePath;
10 10 $.get(url, function(data) {
11 11 // TODO replace or append boolean
12 12 console.log('got: ' + url);
13   - $(target).append(_preprocessHtml(data, serverUrl));
  13 +
  14 + var processedHtml = _preprocessHtml(data, serverUrl);
  15 + if (prepend) {
  16 + $(target).prepend(processedHtml);
  17 + } else {
  18 + $(target).append(processedHtml);
  19 + }
14 20 })
15 21 .done(function() {
16 22 callback && callback(); // call if defined
... ... @@ -27,7 +33,7 @@
27 33 console.log('click right hand on panel');
28 34 });
29 35  
30   - $('#avatar-body-right-hand').bind('click', function() {
  36 + /*$('#avatar-body-right-hand').bind('click', function() {
31 37 console.log('click avatar hand');
32 38 dynengine.render(url, '/right-hand/movements.html', '#selection-panel', function() {
33 39 $('.movimento-pontual').bind('click', function() {
... ... @@ -40,8 +46,8 @@
40 46 });
41 47 });
42 48  
43   - });
  49 + });*/
44 50  
45 51 };
46 52  
47   -}(window.dynengine = window.wikilibras || {}, jQuery));
  53 +}(window.dynengine = window.dynengine || {}, jQuery));
... ...
view/assets/js/dynamic-selection-workflow.js 0 → 100644
... ... @@ -0,0 +1,121 @@
  1 +(function(dynworkflow, $, undefined) {
  2 +
  3 + var jsonWF = {};
  4 + var baseUrl = "";
  5 +
  6 + var mainConfig = "";
  7 + var currentSubconfigParent = "";
  8 + var currentSubconfig = "";
  9 + var currentSubConfigName = "";
  10 + var currentStep = 0;
  11 +
  12 + function _preprocessConfig(config) {
  13 + config = config.replace("right-hand", "hand");
  14 + config = config.replace("left-hand", "hand");
  15 + return config;
  16 + };
  17 +
  18 + function _getFirstKey(json) {
  19 + var first_key = undefined;
  20 + for (first_key in json) break;
  21 + return first_key;
  22 + }
  23 +
  24 + function _getAttributes(json) {
  25 + var result = [];
  26 + for (attr in json) {
  27 + result.push(attr);
  28 + }
  29 + return result;
  30 + }
  31 +
  32 + function _getNextSubConfig() {
  33 + var attrs = _getAttributes(currentSubconfigParent);
  34 + for (var i = 0; i < attrs.length; i++) {
  35 + if (attrs[i] == currentSubConfigName && i < attrs.length - 1) {
  36 + return attrs[i+1];
  37 + }
  38 + }
  39 + return -1;
  40 + }
  41 +
  42 + function _showCurrentSubconfig() {
  43 + _showSubconfiguration(currentSubConfigName, currentSubconfig[currentStep]);
  44 + }
  45 +
  46 + function _showSubconfiguration(subconfig, step) {
  47 + var step = typeof step == "undefined" ? "passo-1" : step;
  48 + $(".selection-panel-body").hide();
  49 + dynengine.render(baseUrl, "/" + mainConfig + "/" + subconfig +
  50 + "/" + step + ".html", "#selection-panel", true);
  51 + }
  52 +
  53 + dynworkflow.selectMainConfig = function(config) {
  54 + mainConfig = _preprocessConfig(config);
  55 + currentSubConfigName = _getFirstKey(jsonWF[mainConfig]);
  56 + currentSubconfig = jsonWF[mainConfig][currentSubConfigName];
  57 + currentSubconfigParent = jsonWF[mainConfig];
  58 + currentStep = 0;
  59 +
  60 + _showCurrentSubconfig();
  61 + }
  62 +
  63 + dynworkflow.selectMovement = function(movement) {
  64 + var subconfigJSON = currentSubconfig[movement]
  65 + currentSubConfigName = _getFirstKey(subconfigJSON);
  66 + currentSubconfigParent = subconfigJSON;
  67 + currentSubconfig = subconfigJSON[currentSubConfigName];
  68 + currentStep = 0;
  69 +
  70 + _showCurrentSubconfig();
  71 + }
  72 +
  73 + dynworkflow.selectSubConfig = function(config) {
  74 + currentSubConfigName = config;
  75 + currentSubconfig = currentSubconfigParent[currentSubConfigName];
  76 + currentStep = 0;
  77 +
  78 + _showCurrentSubconfig();
  79 + }
  80 +
  81 + dynworkflow.nextSubConfig = function() {
  82 + currentStep = currentStep + 1;
  83 +
  84 + if (currentStep < currentSubconfig.length) {
  85 + _showCurrentSubconfig();
  86 + } else {
  87 + var nextSubConfig = _getNextSubConfig();
  88 +
  89 + if (nextSubConfig != -1) {
  90 + dynworkflow.selectSubConfig(nextSubConfig);
  91 + } else {
  92 + wikilibras.hideSelectionPanel();
  93 + }
  94 + }
  95 + }
  96 +
  97 + dynworkflow.setupTimeline = function() {
  98 + dynengine.render(baseUrl, "/" + mainConfig + "/timeline.html", "#selection-panel", false, function() {
  99 + $(".subconfiguration-options .icon_container").hide();
  100 +
  101 + for (var name in currentSubconfigParent) {
  102 + $(".subconfiguration-options .icon_container[json_name=" + name + "]").show();
  103 + }
  104 + if (mainConfig == "hand") {
  105 + $(".subconfiguration-options .icon_container[json_name=movimento]").show();
  106 + }
  107 +
  108 + $(".subconfiguration-panel").show();
  109 + });
  110 + }
  111 +
  112 + dynworkflow.load = function() {
  113 + baseUrl = $('#server-url').data('url');
  114 + $.get(baseUrl + "/conf/selection-workflow-json", function(result) {
  115 + jsonWF = $.parseJSON(result);
  116 + }).fail(function() {
  117 + console.log("Failed to load the workflow configuration");
  118 + });
  119 + }
  120 +
  121 +}(window.dynworkflow = window.dynworkflow || {}, jQuery));
0 122 \ No newline at end of file
... ...
view/assets/js/movement.js 0 → 100644
... ... @@ -0,0 +1,14 @@
  1 +(function(movement, $, undefined) {
  2 +
  3 + var base_url = "";
  4 +
  5 + movement.setup = function(serverhost) {
  6 + base_url = serverhost;
  7 +
  8 + $("#right-hand-moviment .selection-panel-option").off("click").on(
  9 + "click", function() {
  10 + dynworkflow.selectMovement($(this).attr("value"));
  11 + dynworkflow.setupTimeline();
  12 + });
  13 + };
  14 +}(window.movement = window.movement || {}, jQuery));
0 15 \ No newline at end of file
... ...
view/assets/js/orientation.js 0 → 100644
... ... @@ -0,0 +1,10 @@
  1 +(function(orientation, $, undefined) {
  2 +
  3 + orientation.setup = function() {
  4 + $("#right-hand-orientation .selection-panel-option").off("click").on(
  5 + "click", function() {
  6 + dynworkflow.nextSubConfig();
  7 + });
  8 + };
  9 +
  10 +}(window.orientation = window.orientation || {}, jQuery));
0 11 \ No newline at end of file
... ...
view/assets/js/wikilibras.js
... ... @@ -178,6 +178,8 @@
178 178 _setupHandSelectionPanel(option);
179 179 }
180 180 _setupGUIOnSelection(option);
  181 +
  182 + dynworkflow.selectMainConfig(option);
181 183 }
182 184  
183 185 function _hideSelectionPanel() {
... ... @@ -450,8 +452,7 @@
450 452 // JSON
451 453 function _getFirstKey(json) {
452 454 var first_key = undefined;
453   - for (first_key in json)
454   - ;
  455 + for (first_key in json) break;
455 456 return first_key;
456 457 }
457 458  
... ... @@ -506,9 +507,9 @@
506 507 }
507 508  
508 509 function _setupSelectionPanel() {
509   - // $("#selection-panel .x").off("click").on("click", function() {
510   - // _hideSelectionPanel();
511   - // });
  510 + $("#selection-panel .x").off("click").on("click", function() {
  511 + _hideSelectionPanel();
  512 + });
512 513 // $(".selection-panel-body .selection-panel-option").off("click").on(
513 514 // "click", function() {
514 515 // _selectConfig(this);
... ... @@ -594,6 +595,7 @@
594 595 $("#initial-screen").hide();
595 596 $("#configuration-screen").show();
596 597 dynengine.load();
  598 + dynworkflow.load();
597 599 console.log('dynengine loaded');
598 600 });
599 601 $("#ready-button").off("click").on("click", function() {
... ... @@ -623,8 +625,6 @@
623 625 _setupConfigurationPanel();
624 626 _setupSelectionPanel();
625 627 _setupMainScreen(task, deferred);
626   -
627   - articulation.setup(base_url);
628 628 }
629 629  
630 630 function _saveAnswer(task, deferred) {
... ... @@ -678,5 +678,11 @@
678 678 wikilibras.updateParameterJSON = function(config, value) {
679 679 _updateParameterJSON(config, value);
680 680 }
  681 +
  682 + wikilibras.hideSelectionPanel = function() {
  683 + _hideSelectionPanel();
  684 + }
  685 +
  686 +
681 687  
682 688 }(window.wikilibras = window.wikilibras || {}, jQuery));
... ...
view/conf/selection-workflow-json 0 → 100644
... ... @@ -0,0 +1,25 @@
  1 +{
  2 + "facial" : {
  3 + "expressao" : ["passo-1"],
  4 + "transicao" : ["passo-1"],
  5 + "duracao" : ["passo-1"]
  6 + },
  7 + "hand" : {
  8 + "movimento" : {
  9 + "pontual" : {
  10 + "articulacao" : ["passo-1", "passo-2"],
  11 + "configuracao" : ["passo-1", "passo-2"],
  12 + "orientacao" : ["passo-1"]
  13 + },
  14 + "circular" : {
  15 + "articulacao" : ["passo-1", "passo-2"],
  16 + "configuracao" : ["passo-1", "passo-2"],
  17 + "orientacao" : ["passo-1"],
  18 + "raio" : ["passo-1"],
  19 + "velocidade" : ["passo-1"],
  20 + "lado_oposto" : ["passo-1"],
  21 + "sentido_inverso" : ["passo-1"]
  22 + }
  23 + }
  24 + }
  25 +}
0 26 \ No newline at end of file
... ...
view/facial/timeline.html 0 → 100644
... ... @@ -0,0 +1,28 @@
  1 +<div class="subconfiguration-panel col-sm-12">
  2 + <div class="arrow icon_container col-sm-1" name="left-arrow">
  3 + <img src="{{ server }}/img/left-arrow-icon.png" />
  4 + </div>
  5 +
  6 + <div id="facial-subconfiguration-options"
  7 + class="subconfiguration-options col-sm-10">
  8 + <div class="icon_container" name="facial-expression"
  9 + panel="facial-expression" previous="facial-expression"
  10 + next="facial-expression-velocity">
  11 + <img src="{{ server }}/img/facial-expression-icon.png" />
  12 + </div>
  13 + <div class="icon_container" name="facial-expression-velocity"
  14 + panel="facial-expression-velocity" previous="facial-expression"
  15 + next="facial-expression-duration">
  16 + <img src="{{ server }}/img/facial-expression-velocity-icon.png" />
  17 + </div>
  18 + <div class="icon_container" name="facial-expression-duration"
  19 + panel="facial-expression-duration"
  20 + previous="facial-expression-velocity" next="end">
  21 + <img src="{{ server }}/img/facial-expression-duration-icon.png" />
  22 + </div>
  23 + </div>
  24 +
  25 + <div class="arrow icon_container col-sm-1" name="right-arrow">
  26 + <img src="{{ server }}/img/right-arrow-icon.png" />
  27 + </div>
  28 +</div>
... ...
view/hand/articulacao/passo-1.html 0 → 100644
... ... @@ -0,0 +1,75 @@
  1 +<div id="right-hand-articulation-x-y" class="selection-panel-body">
  2 + <div class="panel-header">
  3 + <h8>Onde é feito o sinal?</h8>
  4 + </div>
  5 + <div class="selection-panel-inner-body">
  6 + <div data-x="" data-y=""
  7 + class="module-x-y grid gray-background right-hand-gray-front-avatar active">
  8 + <div class=grid-selectors>
  9 + <div class="grid-row row-number-1" data-y=1>
  10 + <div class="ball-selector selection-panel-option ball-1" data-x=1></div>
  11 + <div class="ball-selector selection-panel-option ball-2" data-x=2></div>
  12 + <div class="ball-selector selection-panel-option ball-3" data-x=3></div>
  13 + <div class="ball-selector selection-panel-option ball-4" data-x=4></div>
  14 + <div class="ball-selector selection-panel-option ball-5" data-x=5></div>
  15 + <div class="ball-selector selection-panel-option ball-6" data-x=6></div>
  16 + <div class="ball-selector selection-panel-option ball-7" data-x=7></div>
  17 + <div class="ball-selector selection-panel-option ball-8" data-x=8></div>
  18 + <div class="ball-selector selection-panel-option ball-9" data-x=9></div>
  19 + <div class="ball-selector selection-panel-option ball-10" data-x=10></div>
  20 + </div>
  21 + <div class="grid-row row-number-2" data-y=2>
  22 + <div class="ball-selector selection-panel-option ball-1" data-x=1></div>
  23 + <div class="ball-selector selection-panel-option ball-2" data-x=2></div>
  24 + <div class="ball-selector selection-panel-option ball-3" data-x=3></div>
  25 + <div class="ball-selector selection-panel-option ball-4" data-x=4></div>
  26 + <div class="ball-selector selection-panel-option ball-5" data-x=5></div>
  27 + <div class="ball-selector selection-panel-option ball-6" data-x=6></div>
  28 + <div class="ball-selector selection-panel-option ball-7" data-x=7></div>
  29 + <div class="ball-selector selection-panel-option ball-8" data-x=8></div>
  30 + <div class="ball-selector selection-panel-option ball-9" data-x=9></div>
  31 + <div class="ball-selector selection-panel-option ball-10" data-x=10></div>
  32 + </div>
  33 + <div class="grid-row row-number-3" data-y=3>
  34 + <div class="ball-selector selection-panel-option ball-1" data-x=1></div>
  35 + <div class="ball-selector selection-panel-option ball-2" data-x=2></div>
  36 + <div class="ball-selector selection-panel-option ball-3" data-x=3></div>
  37 + <div class="ball-selector selection-panel-option ball-4" data-x=4></div>
  38 + <div class="ball-selector selection-panel-option ball-5" data-x=5></div>
  39 + <div class="ball-selector selection-panel-option ball-6" data-x=6></div>
  40 + <div class="ball-selector selection-panel-option ball-7" data-x=7></div>
  41 + <div class="ball-selector selection-panel-option ball-8" data-x=8></div>
  42 + <div class="ball-selector selection-panel-option ball-9" data-x=9></div>
  43 + <div class="ball-selector selection-panel-option ball-10" data-x=10></div>
  44 + </div>
  45 + <div class="grid-row row-number-4" data-y=4>
  46 + <div class="ball-selector selection-panel-option ball-1" data-x=1></div>
  47 + <div class="ball-selector selection-panel-option ball-2" data-x=2></div>
  48 + <div class="ball-selector selection-panel-option ball-3" data-x=3></div>
  49 + <div class="ball-selector selection-panel-option ball-4" data-x=4></div>
  50 + <div class="ball-selector selection-panel-option ball-5" data-x=5></div>
  51 + <div class="ball-selector selection-panel-option ball-6" data-x=6></div>
  52 + <div class="ball-selector selection-panel-option ball-7" data-x=7></div>
  53 + <div class="ball-selector selection-panel-option ball-8" data-x=8></div>
  54 + <div class="ball-selector selection-panel-option ball-9" data-x=9></div>
  55 + <div class="ball-selector selection-panel-option ball-10" data-x=10></div>
  56 + </div>
  57 + <div class="grid-row row-number-5" data-y=5>
  58 + <div class="ball-selector selection-panel-option ball-1" data-x=1></div>
  59 + <div class="ball-selector selection-panel-option ball-2" data-x=2></div>
  60 + <div class="ball-selector selection-panel-option ball-3" data-x=3></div>
  61 + <div class="ball-selector selection-panel-option ball-4" data-x=4></div>
  62 + <div class="ball-selector selection-panel-option ball-5" data-x=5></div>
  63 + <div class="ball-selector selection-panel-option ball-6" data-x=6></div>
  64 + <div class="ball-selector selection-panel-option ball-7" data-x=7></div>
  65 + <div class="ball-selector selection-panel-option ball-8" data-x=8></div>
  66 + <div class="ball-selector selection-panel-option ball-9" data-x=9></div>
  67 + <div class="ball-selector selection-panel-option ball-10" data-x=10></div>
  68 + </div>
  69 + </div>
  70 + </div>
  71 + </div>
  72 +</div>
  73 +<script type="text/javascript">
  74 + articulation.setup("{{ server }}");
  75 +</script>
0 76 \ No newline at end of file
... ...
view/hand/articulacao/passo-2.html 0 → 100644
... ... @@ -0,0 +1,37 @@
  1 +<div id="right-hand-articulation-z" class="selection-panel-body">
  2 + <div class="panel-header">
  3 + <h8>Escolha a distância entre a mão e o corpo</h8>
  4 + </div>
  5 + <div class="selection-panel-inner-body">
  6 + <div data-z="" class="module-z grid gray-background gray-side-avatar">
  7 + <div class="grid-selectors pull-right">
  8 + <div class="grid-row row-number-1">
  9 + <div class="ball-selector selection-panel-option ball-1" data-z=1></div>
  10 + <div class="ball-selector selection-panel-option ball-2" data-z=2></div>
  11 + <div class="ball-selector selection-panel-option ball-3" data-z=3></div>
  12 + </div>
  13 + <div class="grid-row row-number-2">
  14 + <div class="ball-selector selection-panel-option ball-1" data-z=1></div>
  15 + <div class="ball-selector selection-panel-option ball-2" data-z=2></div>
  16 + <div class="ball-selector selection-panel-option ball-3" data-z=3></div>
  17 + </div>
  18 + <div class="grid-row row-number-3">
  19 + <div class="ball-selector selection-panel-option ball-1" data-z=1></div>
  20 + <div class="ball-selector selection-panel-option ball-2" data-z=2></div>
  21 + <div class="ball-selector selection-panel-option ball-3" data-z=3></div>
  22 + </div>
  23 + <div class="grid-row row-number-4">
  24 + <div class="ball-selector selection-panel-option ball-1" data-z=1></div>
  25 + <div class="ball-selector selection-panel-option ball-2" data-z=2></div>
  26 + <div class="ball-selector selection-panel-option ball-3" data-z=3></div>
  27 + </div>
  28 + <div class="grid-row row-number-5">
  29 + <div class="ball-selector selection-panel-option ball-1" data-z=1></div>
  30 + </div>
  31 + </div>
  32 + </div>
  33 + </div>
  34 +</div>
  35 +<script type="text/javascript">
  36 + articulation.setup("{{ server }}");
  37 +</script>
0 38 \ No newline at end of file
... ...
view/hand/configuracao/passo-1.html 0 → 100644
... ... @@ -0,0 +1,30 @@
  1 +<div id="right-hand-fingers-position-group" class="selection-panel-body">
  2 + <div class="panel-header">
  3 + <h8>Escolha a posição mais parecida dos dedos</h8>
  4 + </div>
  5 + <div class="selection-panel-inner-body">
  6 + <ul class="rig columns-3">
  7 + <li><img class="box-panel-option selection-panel-option"
  8 + src="{{ server }}/img/cmd/0007.png" group="0" />
  9 + 0.</li>
  10 + <li><img class="box-panel-option selection-panel-option"
  11 + src="{{ server }}/img/cmd/0014.png" group="1" />
  12 + 1.</li>
  13 + <li><img class="box-panel-option selection-panel-option"
  14 + src="{{ server }}/img/cmd/0045.png" group="2" />
  15 + 2.</li>
  16 + <li><img class="box-panel-option selection-panel-option"
  17 + src="{{ server }}/img/cmd/0048.png" group="3" />
  18 + 3.</li>
  19 + <li><img class="box-panel-option selection-panel-option"
  20 + src="{{ server }}/img/cmd/0040.png" group="4" />
  21 + 4.</li>
  22 + <li><img class="box-panel-option selection-panel-option"
  23 + src="{{ server }}/img/cmd/0000.png" group="5" />
  24 + 5.</li>
  25 + </ul>
  26 + </div>
  27 +</div>
  28 +<script type="text/javascript">
  29 + configuration.setupFingersGroup();
  30 +</script>
0 31 \ No newline at end of file
... ...
view/hand/configuracao/passo-2.html 0 → 100644
... ... @@ -0,0 +1,214 @@
  1 +<div id="right-hand-fingers-position" class="selection-panel-body">
  2 + <div class="panel-header">
  3 + <h8>Escolha a posição dos dedos</h8>
  4 + </div>
  5 + <div class="selection-panel-inner-body">
  6 + <div class="finger-group" group="0">
  7 + <ul class="rig columns-4">
  8 + <li><img class="box-panel-option selection-panel-option"
  9 + src="{{ server }}/img/cmd/0001.png"
  10 + value="1" /> 1.</li>
  11 + <li><img class="box-panel-option selection-panel-option"
  12 + src="{{ server }}/img/cmd/0002.png"
  13 + value="2" /> 2.</li>
  14 + <li><img class="box-panel-option selection-panel-option"
  15 + src="{{ server }}/img/cmd/0007.png"
  16 + value="7" /> 3.</li>
  17 + <li><img class="box-panel-option selection-panel-option"
  18 + src="{{ server }}/img/cmd/0008.png"
  19 + value="8" /> 4.</li>
  20 + <li><img class="box-panel-option selection-panel-option"
  21 + src="{{ server }}/img/cmd/0009.png"
  22 + value="9" /> 5.</li>
  23 + <li><img class="box-panel-option selection-panel-option"
  24 + src="{{ server }}/img/cmd/0010.png"
  25 + value="10" /> 6.</li>
  26 + <li><img class="box-panel-option selection-panel-option"
  27 + src="{{ server }}/img/cmd/0011.png"
  28 + value="11" /> 7.</li>
  29 + <li><img class="box-panel-option selection-panel-option"
  30 + src="{{ server }}/img/cmd/0016.png"
  31 + value="16" /> 8.</li>
  32 + <li><img class="box-panel-option selection-panel-option"
  33 + src="{{ server }}/img/cmd/0017.png"
  34 + value="17" /> 9.</li>
  35 + <li><img class="box-panel-option selection-panel-option"
  36 + src="{{ server }}/img/cmd/0018.png"
  37 + value="18" /> 10.</li>
  38 + <li><img class="box-panel-option selection-panel-option"
  39 + src="{{ server }}/img/cmd/0019.png"
  40 + value="19" /> 11.</li>
  41 + <li><img class="box-panel-option selection-panel-option"
  42 + src="{{ server }}/img/cmd/0020.png"
  43 + value="20" /> 12.</li>
  44 + <li><img class="box-panel-option selection-panel-option"
  45 + src="{{ server }}/img/cmd/0021.png"
  46 + value="21" /> 13.</li>
  47 + <li><img class="box-panel-option selection-panel-option"
  48 + src="{{ server }}/img/cmd/0022.png"
  49 + value="22" /> 14.</li>
  50 + <li><img class="box-panel-option selection-panel-option"
  51 + src="{{ server }}/img/cmd/0023.png"
  52 + value="23" /> 15.</li>
  53 + <li><img class="box-panel-option selection-panel-option"
  54 + src="{{ server }}/img/cmd/0024.png"
  55 + value="24" /> 16.</li>
  56 + <li><img class="box-panel-option selection-panel-option"
  57 + src="{{ server }}/img/cmd/0058.png"
  58 + value="58" /> 17.</li>
  59 + <li><img class="box-panel-option selection-panel-option"
  60 + src="{{ server }}/img/cmd/0059.png"
  61 + value="59" /> 18.</li>
  62 + <li><img class="box-panel-option selection-panel-option"
  63 + src="{{ server }}/img/cmd/0060.png"
  64 + value="60" /> 19.</li>
  65 + </ul>
  66 + </div>
  67 + <div class="finger-group" group="1">
  68 + <ul class="rig columns-4">
  69 + <li><img class="box-panel-option selection-panel-option"
  70 + src="{{ server }}/img/cmd/0003.png"
  71 + value="3" /> 1.</li>
  72 + <li><img class="box-panel-option selection-panel-option"
  73 + src="{{ server }}/img/cmd/0005.png"
  74 + value="5" /> 2.</li>
  75 + <li><img class="box-panel-option selection-panel-option"
  76 + src="{{ server }}/img/cmd/0006.png"
  77 + value="6" /> 3.</li>
  78 + <li><img class="box-panel-option selection-panel-option"
  79 + src="{{ server }}/img/cmd/0012.png"
  80 + value="12" /> 4.</li>
  81 + <li><img class="box-panel-option selection-panel-option"
  82 + src="{{ server }}/img/cmd/0013.png"
  83 + value="13" /> 5.</li>
  84 + <li><img class="box-panel-option selection-panel-option"
  85 + src="{{ server }}/img/cmd/0014.png"
  86 + value="14" /> 6.</li>
  87 + <li><img class="box-panel-option selection-panel-option"
  88 + src="{{ server }}/img/cmd/0030.png"
  89 + value="30" /> 7.</li>
  90 + <li><img class="box-panel-option selection-panel-option"
  91 + src="{{ server }}/img/cmd/0052.png"
  92 + value="52" /> 8.</li>
  93 + </ul>
  94 + </div>
  95 + <div class="finger-group" group="2">
  96 + <ul class="rig columns-4">
  97 + <li><img class="box-panel-option selection-panel-option"
  98 + src="{{ server }}/img/cmd/0004.png"
  99 + value="4" /> 1.</li>
  100 + <li><img class="box-panel-option selection-panel-option"
  101 + src="{{ server }}/img/cmd/0015.png"
  102 + value="15" /> 2.</li>
  103 + <li><img class="box-panel-option selection-panel-option"
  104 + src="{{ server }}/img/cmd/0029.png"
  105 + value="29" /> 3.</li>
  106 + <li><img class="box-panel-option selection-panel-option"
  107 + src="{{ server }}/img/cmd/0031.png"
  108 + value="31" /> 4.</li>
  109 + <li><img class="box-panel-option selection-panel-option"
  110 + src="{{ server }}/img/cmd/0032.png"
  111 + value="32" /> 5.</li>
  112 + <li><img class="box-panel-option selection-panel-option"
  113 + src="{{ server }}/img/cmd/0035.png"
  114 + value="35" /> 6.</li>
  115 + <li><img class="box-panel-option selection-panel-option"
  116 + src="{{ server }}/img/cmd/0036.png"
  117 + value="36" /> 7.</li>
  118 + <li><img class="box-panel-option selection-panel-option"
  119 + src="{{ server }}/img/cmd/0045.png"
  120 + value="45" /> 8.</li>
  121 + <li><img class="box-panel-option selection-panel-option"
  122 + src="{{ server }}/img/cmd/0051.png"
  123 + value="51" /> 9.</li>
  124 + </ul>
  125 + </div>
  126 + <div class="finger-group" group="3">
  127 + <ul class="rig columns-4">
  128 + <li><img class="box-panel-option selection-panel-option"
  129 + src="{{ server }}/img/cmd/0033.png"
  130 + value="33" /> 1.</li>
  131 + <li><img class="box-panel-option selection-panel-option"
  132 + src="{{ server }}/img/cmd/0034.png"
  133 + value="34" /> 2.</li>
  134 + <li><img class="box-panel-option selection-panel-option"
  135 + src="{{ server }}/img/cmd/0037.png"
  136 + value="37" /> 3.</li>
  137 + <li><img class="box-panel-option selection-panel-option"
  138 + src="{{ server }}/img/cmd/0039.png"
  139 + value="39" /> 4.</li>
  140 + <li><img class="box-panel-option selection-panel-option"
  141 + src="{{ server }}/img/cmd/0043.png"
  142 + value="43" /> 5.</li>
  143 + <li><img class="box-panel-option selection-panel-option"
  144 + src="{{ server }}/img/cmd/0044.png"
  145 + value="44" /> 6.</li>
  146 + <li><img class="box-panel-option selection-panel-option"
  147 + src="{{ server }}/img/cmd/0046.png"
  148 + value="46" /> 7.</li>
  149 + <li><img class="box-panel-option selection-panel-option"
  150 + src="{{ server }}/img/cmd/0047.png"
  151 + value="47" /> 8.</li>
  152 + <li><img class="box-panel-option selection-panel-option"
  153 + src="{{ server }}/img/cmd/0048.png"
  154 + value="48" /> 9.</li>
  155 + <li><img class="box-panel-option selection-panel-option"
  156 + src="{{ server }}/img/cmd/0049.png"
  157 + value="49" /> 10.</li>
  158 + <li><img class="box-panel-option selection-panel-option"
  159 + src="{{ server }}/img/cmd/0050.png"
  160 + value="50" /> 11.</li>
  161 + </ul>
  162 + </div>
  163 + <div class="finger-group" group="4">
  164 + <ul class="rig columns-4">
  165 + <li><img class="box-panel-option selection-panel-option"
  166 + src="{{ server }}/img/cmd/0038.png"
  167 + value="38" /> 1.</li>
  168 + <li><img class="box-panel-option selection-panel-option"
  169 + src="{{ server }}/img/cmd/0040.png"
  170 + value="40" /> 2.</li>
  171 + <li><img class="box-panel-option selection-panel-option"
  172 + src="{{ server }}/img/cmd/0041.png"
  173 + value="41" /> 3.</li>
  174 + <li><img class="box-panel-option selection-panel-option"
  175 + src="{{ server }}/img/cmd/0042.png"
  176 + value="42" /> 4.</li>
  177 + </ul>
  178 + </div>
  179 + <div class="finger-group" group="5">
  180 + <ul class="rig columns-4">
  181 + <li><img class="box-panel-option selection-panel-option"
  182 + src="{{ server }}/img/cmd/0025.png"
  183 + value="25" /> 1.</li>
  184 + <li><img class="box-panel-option selection-panel-option"
  185 + src="{{ server }}/img/cmd/0026.png"
  186 + value="26" /> 2.</li>
  187 + <li><img class="box-panel-option selection-panel-option"
  188 + src="{{ server }}/img/cmd/0027.png"
  189 + value="27" /> 3.</li>
  190 + <li><img class="box-panel-option selection-panel-option"
  191 + src="{{ server }}/img/cmd/0028.png"
  192 + value="28" /> 4.</li>
  193 + <li><img class="box-panel-option selection-panel-option"
  194 + src="{{ server }}/img/cmd/0053.png"
  195 + value="53" /> 5.</li>
  196 + <li><img class="box-panel-option selection-panel-option"
  197 + src="{{ server }}/img/cmd/0054.png"
  198 + value="54" /> 6.</li>
  199 + <li><img class="box-panel-option selection-panel-option"
  200 + src="{{ server }}/img/cmd/0055.png"
  201 + value="55" /> 7.</li>
  202 + <li><img class="box-panel-option selection-panel-option"
  203 + src="{{ server }}/img/cmd/0056.png"
  204 + value="56" /> 8.</li>
  205 + <li><img class="box-panel-option selection-panel-option"
  206 + src="{{ server }}/img/cmd/0057.png"
  207 + value="57" /> 9.</li>
  208 + </ul>
  209 + </div>
  210 + </div>
  211 +</div>
  212 +<script type="text/javascript">
  213 + configuration.setupFingersPosition();
  214 +</script>
0 215 \ No newline at end of file
... ...
view/hand/movimento/passo-1.html 0 → 100644
... ... @@ -0,0 +1,35 @@
  1 +<div id="right-hand-moviment" class="selection-panel-body"
  2 + name="movimento">
  3 + <div class="panel-header">
  4 + <h8>Escolha o movimento mais parecido</h8>
  5 + </div>
  6 + <div class="selection-panel-inner-body">
  7 + <ul class="rig columns-2">
  8 + <li class="movimento-pontual"><img
  9 + class="box-panel-option selection-panel-option"
  10 + src="{{ server }}/img/mov/CALAR.gif" value="pontual" />Pontual</li>
  11 + <!--
  12 + <li><video src="{{ server }}/img/mov/PONTUAL.webm"
  13 + preload="metadata" value="pontual"
  14 + class="box-panel-option selection-panel-option" autoplay loop>
  15 + <source type="video/webm">
  16 + </video> Pontual</li>
  17 + <li><img class="box-panel-option selection-panel-option"
  18 + src="{{ server }}/img/exf/0000.png" value="retilineo"/>Retilíneo</li>
  19 + <li><img class="box-panel-option selection-panel-option"
  20 + src="{{ server }}/img/exf/0000.png" value="circular"/>Circular</li>
  21 + <li><img class="box-panel-option selection-panel-option"
  22 + src="{{ server }}/img/exf/0000.png" value="semicircular"/>Semi-Circular</li>
  23 + <li><img class="box-panel-option selection-panel-option"
  24 + src="{{ server }}/img/exf/0000.png" value="helicoidal"/>Espiral</li>
  25 + <li><img class="box-panel-option selection-panel-option"
  26 + src="{{ server }}/img/exf/0000.png" value="senoidal"/>Curvas</li>
  27 + <li><img class="box-panel-option selection-panel-option"
  28 + src="{{ server }}/img/exf/0000.png" value="contato"/>Contato</li>
  29 + -->
  30 + </ul>
  31 + </div>
  32 +</div>
  33 +<script type="text/javascript">
  34 + movement.setup("{{ server }}");
  35 +</script>
... ...
view/hand/orientacao/passo-1.html 0 → 100644
... ... @@ -0,0 +1,37 @@
  1 +<div id="right-hand-orientation" class="selection-panel-body"
  2 + name="orientacao">
  3 + <div class="panel-header">
  4 + <h8>Palma da mão</h8>
  5 + </div>
  6 + <div class="selection-panel-inner-body">
  7 + <ul class="rig columns-3">
  8 + <li><img class="box-panel-option selection-panel-option"
  9 + src="{{ server }}/img/ord/01.png" value="68" />1.</li>
  10 + <li><img class="box-panel-option selection-panel-option"
  11 + src="{{ server }}/img/ord/02.png" value="66" />2.</li>
  12 + <li><img class="box-panel-option selection-panel-option"
  13 + src="{{ server }}/img/ord/03.png" value="64" />3.</li>
  14 + <li><img class="box-panel-option selection-panel-option"
  15 + src="{{ server }}/img/ord/04.png" value="2" />4.</li>
  16 + <li><img class="box-panel-option selection-panel-option"
  17 + src="{{ server }}/img/ord/05.png" value="9" />5.</li>
  18 + <li><img class="box-panel-option selection-panel-option"
  19 + src="{{ server }}/img/ord/06.png" value="16" />6.</li>
  20 + <li><img class="box-panel-option selection-panel-option"
  21 + src="{{ server }}/img/ord/07.png" value="92" />7.</li>
  22 + <li><img class="box-panel-option selection-panel-option"
  23 + src="{{ server }}/img/ord/08.png" value="90" />8.</li>
  24 + <li><img class="box-panel-option selection-panel-option"
  25 + src="{{ server }}/img/ord/09.png" value="88" />9.</li>
  26 + <li><img class="box-panel-option selection-panel-option"
  27 + src="{{ server }}/img/ord/10.png" value="4" />10.</li>
  28 + <li><img class="box-panel-option selection-panel-option"
  29 + src="{{ server }}/img/ord/11.png" value="11" />11.</li>
  30 + <li><img class="box-panel-option selection-panel-option"
  31 + src="{{ server }}/img/ord/12.png" value="18" />12.</li>
  32 + </ul>
  33 + </div>
  34 +</div>
  35 +<script type="text/javascript">
  36 + orientation.setup();
  37 +</script>
0 38 \ No newline at end of file
... ...
view/hand/timeline.html 0 → 100644
... ... @@ -0,0 +1,29 @@
  1 +<div class="subconfiguration-panel col-sm-12">
  2 + <div class="arrow icon_container col-sm-1" name="left-arrow">
  3 + <img src="{{ server }}/img/left-arrow-icon.png" />
  4 + </div>
  5 +
  6 + <div id="right-hand-subconfiguration-options"
  7 + class="subconfiguration-options col-sm-10">
  8 + <div class="icon_container" name="hand-moviment"
  9 + panel="right-hand-moviment" json_name="movimento">
  10 + <img src="{{ server }}/img/hand-moviment-icon.png" />
  11 + </div>
  12 + <div class="icon_container" name="hand-articulation"
  13 + panel="right-hand-articulation" json_name="articulacao">
  14 + <img src="{{ server }}/img/hand-articulation-icon.png" />
  15 + </div>
  16 + <div class="icon_container" name="hand-fingers-position"
  17 + panel="right-hand-fingers-position" json_name="configuracao">
  18 + <img src="{{ server }}/img/hand-fingers-position-icon.png" />
  19 + </div>
  20 + <div class="icon_container" name="hand-orientation"
  21 + panel="right-hand-orientation" json_name="orientacao">
  22 + <img src="{{ server }}/img/hand-orientation-icon.png" />
  23 + </div>
  24 + </div>
  25 +
  26 + <div class="arrow icon_container col-sm-1" name="right-arrow">
  27 + <img src="{{ server }}/img/right-arrow-icon.png" />
  28 + </div>
  29 +</div>
... ...
view/template.html
... ... @@ -114,17 +114,6 @@
114 114  
115 115 {{ facialConfig.selectionPanel() }}
116 116  
117   - <div class="subconfiguration-panel col-sm-12">
118   - <div class="arrow icon_container col-sm-1" name="left-arrow">
119   - <img src="{{ server }}/img/left-arrow-icon.png" />
120   - </div>
121   -
122   - {{ facialConfig.subconfigPanel() }}
123   -
124   - <div class="arrow icon_container col-sm-1" name="right-arrow">
125   - <img src="{{ server }}/img/right-arrow-icon.png" />
126   - </div>
127   - </div>
128 117 </div>
129 118 </div>
130 119 </div>
... ... @@ -191,9 +180,13 @@
191 180 </div>
192 181  
193 182 <script src="{{ server }}/assets/js/js.cookie.js"></script>
  183 +<script src="{{ server }}/assets/js/movement.js"></script>
194 184 <script src="{{ server }}/assets/js/articulation.js"></script>
  185 +<script src="{{ server }}/assets/js/configuration.js"></script>
  186 +<script src="{{ server }}/assets/js/orientation.js"></script>
195 187 <script src="{{ server }}/assets/js/wikilibras.js"></script>
196 188 <script src="{{ server }}/assets/js/dynamic-loading-engine.js"></script>
  189 +<script src="{{ server }}/assets/js/dynamic-selection-workflow.js"></script>
197 190  
198 191 <script type="text/javascript">
199 192 wikilibras.run("{{ server }}", "{{ server_backend }}", "{{ app_shortname }}", "{{ api_host }}");
... ...