tmpJSONParser.js
2.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
(function(tmpJSONParser, $, undefined) {
var base_parameter_json = {};
var movement_parameter_json = {};
function _getLoggedUser() {
var pybossa_rembember_token = Cookies.get('remember_token');
var splitted_token_id = pybossa_rembember_token.split('|');
return splitted_token_id.length > 0 ? splitted_token_id[0]
: 'anonymous';
}
function _setupBaseParameterJSON(tmpJSON) {
base_parameter_json['userId'] = _getLoggedUser();
base_parameter_json['sinal'] = tmpJSON['sinal'];
base_parameter_json['interpolacao'] = 'normal';
base_parameter_json['movimentos'] = [];
movement_parameter_json = {
'facial': {},
'mao_direita': {},
'mao_esquerda': {}
};
base_parameter_json['movimentos'].push(movement_parameter_json);
}
function _parseParameterValue(value) {
return !isNaN(value) ? parseInt(value) : value;
}
function _parseTempFacialParameterJSON(tmpJSON) {
var attrs = dynworkflow.getFacialParameters();
for (var i in attrs) {
var attr = attrs[i];
parameterValue = tmpJSON['facial'][attr][0];
movement_parameter_json['facial'][attr] = _parseParameterValue(parameterValue);
}
}
function _parseTempMovementParameterJSON(tmpJSON, hand) {
var movimentConfig = tmpJSON[hand]['movimento'];
if (typeof movimentConfig == 'undefined') return;
var movementName = movimentConfig[0];
var attrs = dynworkflow.getMovementParameters(movementName);
var parsedHand = hand == 'right-hand' ? 'mao_direita' : hand;
parsedHand = hand == 'left-hand' ? 'mao_esquerda' : parsedHand;
movement_parameter_json[parsedHand][movementName] = {};
for (var i in attrs) {
var attr = attrs[i];
var parameterValue = '';
if (attr == 'configuracao') {
parameterValue = tmpJSON[hand][attr][1];
} else if (attr == 'articulacao') {
parameterValue = articulation.processValue(hand,
tmpJSON[hand][attr]);
} else {
parameterValue = tmpJSON[hand][attr][0];
}
movement_parameter_json[parsedHand][movementName][attr] =
_parseParameterValue(parameterValue);
}
}
tmpJSONParser.parse = function(tmpJSON) {
_setupBaseParameterJSON(tmpJSON);
_parseTempFacialParameterJSON(tmpJSON);
_parseTempMovementParameterJSON(tmpJSON, 'right-hand');
_parseTempMovementParameterJSON(tmpJSON, 'left-hand');
return base_parameter_json;
};
}(window.tmpJSONParser = window.tmpJSONParser || {}, jQuery));